LeetCode --- 20. Valid Parentheses
来源:互联网 发布:淘宝宝贝详情装修 编辑:程序博客网 时间:2024/04/29 10:31
题目链接:Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.
The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.
这道题的要求是检查括号是否匹配,其中字符串只包含'('、')'、'{'、'}'、'[' 和 ']'。
这道题的思路比较简单,用栈维护左括号,即在读取字符串的时候,遇到左括号就入栈。而在遇到右括号的时候,检测栈的状态,如果栈为空,说明没有与该右括号匹配的左括号,直接返回false;如果栈顶元素与该右括号不匹配,说明括号没有匹配,返回false;如果相匹配,这可以弹出栈顶元素,继续读取下一个字符了。
在判断括号是否匹配的时候,可以选择用if语句判断,也可以采用map实现。
时间复杂度:O(n)
空间复杂度:O(n)
1 class Solution 2 { 3 public: 4 bool isValid(string s) 5 { 6 stack<char> sc; 7 for(int i = 0; i < s.length(); ++ i) 8 { 9 if(s[i] == '(' || s[i] == '[' || s[i] == '{')10 sc.push(s[i]);11 else12 {13 if(sc.empty())14 return false;15 16 if((sc.top() == '(' && s[i] == ')') ||17 (sc.top() == '[' && s[i] == ']') ||18 (sc.top() == '{' && s[i] == '}'))19 sc.pop();20 else21 return false;22 }23 }24 25 return sc.empty();26 }27 };
转载请说明出处:LeetCode --- 20. Valid Parentheses
0 0
- LeetCode 20. Valid Parentheses
- [LeetCode] 20.Valid Parentheses
- LeetCode --- 20. Valid Parentheses
- LeetCode 20.Valid Parentheses
- [Leetcode] 20. Valid Parentheses
- 【leetcode】20. Valid Parentheses
- [leetcode] 20.Valid Parentheses
- [leetcode] 20. Valid Parentheses
- Leetcode 20. Valid Parentheses
- 20. Valid Parentheses LeetCode
- leetcode 20. Valid Parentheses
- 【LeetCode】20. Valid Parentheses
- leetcode 20. Valid Parentheses
- leetcode 20. Valid Parentheses
- LeetCode-20.Valid Parentheses
- LeetCode *** 20. Valid Parentheses
- LeetCode 20. Valid Parentheses
- leetcode-20. Valid Parentheses
- Oracle命名规范归纳
- 鸡兔同笼
- 1004. Counting Leaves (30)
- LeetCode --- 19. Remove Nth Node From End of List
- 谱聚类算法(Spectral Clustering)
- LeetCode --- 20. Valid Parentheses
- 请保持光棍的节操 寒假手册一封颇具内涵的长信`
- UItableViewCell选中时的颜色及tableviewCell的select和deselect
- Project-Euler problem 1-50
- 记一次log4j日志文件小事故
- WV.21-大数阶乘算法1-序
- 1005. Spell It Right (20)
- 关于 HTTP GET/POST 请求参数长度最大值的一个理解误区
- 100个动规方程