【C++】20.有效的括号【leetcode】——栈数据结构
2020-02-29 23:40
417 查看
题目描述:
思路:
1.单括号():设置变量left,记录当前还未配对的前括号(;每遇到(,left++;每遇到 ),left--
2.但是当出现多种括号时,方法一不适用,为了应对 { [ ( ) ] } 和 [ ( ] ) 这种情况,引入栈数据结构。
C++代码实现:
[code]class Solution { public: bool isValid(string s) { vector<int> res; for(char c:s){ if(c=='('||c=='['||c=='{'){ res.push_back(c); } if(c==')'){ if(res.size()>0&&res.back()=='('){ res.pop_back(); }else{ return false; } } if(c==']'){ if(res.size()>0&&res.back()=='['){ res.pop_back(); }else{ return false; } } if(c=='}'){ if(res.size()>0&&res.back()=='{'){ res.pop_back(); }else{ return false; } } } if(res.size()==0){ return true; }else{ return false; } } };
PS:
C++有自带的stack,下次改一下。
- 点赞 1
- 收藏
- 分享
- 文章举报
相关文章推荐
- leetcode--20--有效的括号(C/C++、栈)
- leetcode 20 有效的括号 c++
- LeetCode—20.有效的括号(Valid Parentheses)——分析及代码(C++)
- leetcode20 Valid Parentheses(有效的括号)
- leetcode刷题之 20. 有效的括号
- LeetCode-20 有效的括号
- Leetcode做题日记:20. 有效的括号 (PYTHON)
- Leetcode刷题(20. 有效的括号)
- leetcode 括号组合题目 20 是否是有效括号 32 最大有效括号 301 去掉无效括号
- 20. 有效的括号-leetcode
- leetcode-20 有效的括号
- 每日一恋 - LeetCode 20.有效的括号 & 150. 逆波兰表达式求值
- Leetcode 20: 有效的括号(Valid Parentheses)
- leetcode 20.有效的括号
- LeetCode刷题笔记 [20] 有效的括号
- LeetCode 20. 有效的括号(java)
- leetcode---20有效的括号
- LeetCode 20 有效的括号 c语言
- leetcode_20.有效对括号(有问题)
- LeetCode || 20. 有效的括号