百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

看动画学懂 LeetCode 第 20 号问题:有效的括号

cac55 2024-10-29 13:15 12 浏览 0 评论

本文是图解 LeetCode 系列文章之一。

个人网站:https://www.cxyxiaowu.com

题目来源于 LeetCode 上第 20 号问题:有效的括号。题目难度为 Easy,目前通过率为 37.8% 。

题目描述

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"
输出: true

示例 2:

输入: "()[]{}"
输出: true

示例 3:

输入: "(]"
输出: false

示例 4:

输入: "([)]"
输出: false

示例 5:

输入: "{[]}"
输出: true

题目解析

这道题让我们验证输入的字符串是否为括号字符串,包括大括号,中括号和小括号。

这里我们使用

  • 遍历输入字符串
  • 如果当前字符为左半边括号时,则将其压入栈中
  • 如果遇到右半边括号时,分类讨论:
  • 1)如栈不为空且为对应的左半边括号,则取出栈顶元素,继续循环
  • 2)若此时栈为空,则直接返回false
  • 3)若不为对应的左半边括号,反之返回false

动画描述

代码实现

class Solution {
public:
 bool isValid(string s) {
 stack<char> stack;
 for( int i = 0 ; i < s.size() ; i ++ )
 if( s[i] == '(' || s[i] == '{' || s[i] == '[')
 stack.push(s[i]);
 else{
 if( stack.size() == 0 )
 return false;
 char c = stack.top();
 stack.pop();
 char match;
 if( s[i] == ')' ){
 match = '(';
 }
 else if( s[i] == ']' ){
 match = '[';
 }
 else{
 match = '{';
 }
 if(c != match) return false;
 }
 if( stack.size() != 0 )
 return false;
 return true;
 }
};

相关推荐

二年级下册语文课后三张表:词语表、生字表、识字,带注音

完整版电子资料,请关注后看我主页置顶贴获取为方便领取资料,请截图本页内容高清图片,可保存原图打印...

怎样把照片识别成文字?免费图片转Word的方法

有时我们去参加一些培训或活动,现场笔记来不及做都是先用手机拍照,后续再整理的时候重新打肯定特别耗时间,是否能直接将照片识别成文字呢?答案当然是肯定的,除了一些比较常用的聊天工具的截图文字识别外,更好用...

25春 | 二年级语文下册《写字表+识字表》,给孩子的预习带来帮助

25春|二年级语文下册《写字表+识字表》,给孩子的预习带来帮助完整版电子资料,请关注后看我主页置顶贴获取为方便领取资料,请截图本页内容高清图片,可保存原图打印...

二年级上册第五单元练字帖截图可打印,暑假练字必备打印版

部编版小学语文教材更加注重基础的掌握与积累,尤其在小学生认字和写字、阅读、古诗词等方面,提出了更高与更细致的要求。练字帖是以部编版小学语文教材的写字表做了汇总并以教材为范本制作写字表字帖字体、写字格规...

四年级上册第一单元练字帖截图可打印,暑假练字必备打印版

这练字帖是由部编版四年级上册教材整理而来的,字体、写字格规格、字号等与教材完全一致,部编版小学语文教材更加注重基础的掌握与积累。大家都知道家长朋友除了关心孩子的成绩之外,另外一个最关心的问题就是孩子...

部编版小学一年级下册语文第一单元识字第1课课件:春夏秋冬

亲爱的读者,今天为您带来的是部编版小学一年级下册语文第一单元识字第1课课件,本套课件是老师辛苦制作的呢。请大家看一下课件截图吧。大家都知道,现在的学校电教化水平很高了,可是,老师们自己制作一份课件非常...

老师的助手:部编版小学一年级下册语文第一单元识字第1课课件

亲爱的读者,今天为您带来的是部编版小学一年级下册语文第一单元识字第1课课件,本套课件是老师辛苦制作的呢。请大家看一下课件截图吧。大家都知道,现在的学校电教化水平很高了,可是,老师们自己制作一份课件非常...

四年级下册字帖语文识字表二类(电子版可打印)

亲爱的同学们好,这里是小学课堂秘籍今天为大家分享:四(下)语文识字表二类字贴23页。小学四年级是语文学习的重要阶段,识字是这个阶段语文学习的基础任务之一。2025新四下语文识字表二类字帖,是依据...

PDF解锁神器:用PyMuPDF与pdfplumber告别手动提取

前言大家好,今天咱们来聊聊如何用Python中的PyMuPDF和pdfplumber库,轻松提取PDF文件里的文本和元数据。你是否曾经在处理一个复杂的PDF文件时,感到信息难以触及,提取过程让人抓狂?...

四年级上册第3单元看拼音写汉字截图打印,暑假预习必备打印版

部编版小学语文教材更加注重基础的掌握与积累,尤其在小学生认字和写字、阅读、古诗词等方面,提出了更高与更细致的要求。练字帖是以部编版小学语文教材的写字表做了汇总并以教材为范本制作写字表字帖字体、写字格规...

二级上册第3一4单元看拼音写汉字截图可打印,暑假预习打印版

部编版小学语文教材更加注重基础的掌握与积累,尤其在小学生认字和写字、阅读、古诗词等方面,提出了更高与更细致的要求。练字帖是以部编版小学语文教材的写字表做了汇总并以教材为范本制作写字表字帖字体、写字格规...

五年级下册语文睡前默写每日一练小纸条(识字.写字.词语)电子版

亲爱的同学们好,这里是小学课堂秘籍今天为大家分享:五(下)语文睡前默写每日一练小纸条(识字.写字.词语),每天的练习围绕一篇或几篇课文展开,题型丰富。看拼音写词语和根据语境写词语,有助于学生巩固生字词...

微信图片识别文字怎么弄?分享两个小妙招

微信是目前全球使用最广泛的即时通讯软件之一,其提供的图像识别功能使得我们能够轻松地通过拍照或者截图来获取图像中的文字信息。本文将介绍微信图片识别文字的方法以及相关技巧。微信图片识别文字的方法微信图片识...

四年级上册第1一2单元看拼音写汉字截图可打印,暑假预习打印版

部编版小学语文教材更加注重基础的掌握与积累,尤其在小学生认字和写字、阅读、古诗词等方面,提出了更高与更细致的要求。练字帖是以部编版小学语文教材的写字表做了汇总并以教材为范本制作写字表字帖字体、写字格规...

25年新版三年级上册语文暑假练习识字表字帖

完整版电子资料,请关注后看我主页置顶贴获取为方便领取资料,请截图本页内容高清图片,可保存原图打印...

取消回复欢迎 发表评论: