【LeetCode算法练习(C++)】Valid Parentheses
来源:互联网 发布:python向ssh输入ctrl c 编辑:程序博客网 时间:2024/05/16 09:45
题目:
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.
链接:Valid Parentheses
解法:遍历字符串,左括号入栈,右括号检查栈顶元素,若不对应立即返回失败。时间O(n)
class Solution {public: bool isValid(string s) { stack<char> st; int len = s.length(); for (int i = 0; i < len; i++) { if (s[i] == '(' || s[i] == '[' || s[i] == '{') { st.push(s[i]); } else if (!st.empty() && s[i] == ')') { if (st.top() == '(') st.pop(); else return false; } else if (!st.empty() && s[i] == ']') { if (st.top() == '[') st.pop(); else return false; } else if (!st.empty() && s[i] == '}') { if (st.top() == '{') st.pop(); else return false; } else { return false; } } return st.empty(); }};
Runtime: 3 ms
阅读全文
0 0
- 【LeetCode算法练习(C++)】Valid Parentheses
- 【LeetCode算法练习(C++)】Longest Valid Parentheses
- 【LeetCode算法练习(C++)】Generate Parentheses
- 算法练习(12):Longest Valid Parentheses
- 【leetcode】20. Valid Parentheses(Python & C++)
- LeetCode:Valid Parentheses算法详解
- [C++]LeetCode: 22 Valid Parentheses
- C实现 LeetCode->Valid Parentheses
- 【leetcode c++】 20 Valid Parentheses
- Leetcode c语言-Valid Parentheses
- [LeetCode] [C++] 20. Valid Parentheses
- LeetCode OJ算法题(二十):Valid Parentheses
- LeetCode OJ算法题(三十一):Longest Valid Parentheses
- LeetCode刷题(C++)——Valid Parentheses(Easy)
- [C++]LeetCode 20: Valid Parentheses(判断运算符有效性)
- LeetCode(20)Valid Parentheses
- leetcode(20. Valid Parentheses)
- LeetCode(49)-Valid Parentheses
- Titan图形数据库的应用实例讲解
- [日推荐]『台湾景点大全』小编带你游台湾!
- 关于 javaweb的文件上传实时显示进度
- html5_自定义标签
- VMware Ubuntu无法上网
- 【LeetCode算法练习(C++)】Valid Parentheses
- 【Java基础08_2】继承
- 【UGUI】Unity UGUI text 首行添加空格
- bzoj1650: [Usaco2006 Dec]River Hopscotch 跳石子 luogu【P2678】 跳石头 (二分)
- 基于spark构建逻辑回归
- ppt文档制作的五个要素,制作ppt需要注意了
- 带你全面了解ABBYY FineReader Pro for Mac(下)
- Asp.Net 中验证 Discuz 的登录密码
- NGINX作为WebSocket代理