Valid Parentheses -- leetcode
2014-12-25 15:40
267 查看
Given a string containing just the characters
The brackets must close in the correct order,
提前进栈一个字符,省得循环中检查栈空了。
在leetcode上的运行时间为4ms。
'(',
')',
'{',
'}',
'['and
']', determine if the input string is valid.
The brackets must close in the correct order,
"()"and
"()[]{}"are all valid but
"(]"and
"([)]"are not.
class Solution { public: bool isValid(string s) { stack<char, vector<char> > lifo; lifo.push('#'); for (size_t i=0; i<s.size(); i++) { if (s[i] == '{' || s[i] == '[' || s[i] == '(') lifo.push(s[i]); else { const char ch = lifo.top(); lifo.pop(); if ((s[i] == '}' && ch != '{') || (s[i] == ']' && ch != '[') || (s[i] == ')' && ch != '(')) return false; } } lifo.pop(); return lifo.empty(); } };
提前进栈一个字符,省得循环中检查栈空了。
在leetcode上的运行时间为4ms。
相关文章推荐
- LeetCode解题-#20-Valid Parentheses
- LeetCode 20 Valid Parentheses
- leetcode Valid Parentheses(Java)
- LeetCode 32. Longest Valid Parentheses(最长合法圆括号子序列)
- Longest Valid Parentheses -- LeetCode
- leetcode_Valid Parentheses
- (重点)[LeetCode]Longest Valid Parentheses
- [LeetCode]Valid Parentheses
- [Leetcode] Valid Parentheses
- [LeetCode] Valid Parentheses
- 【Leetcode problem 20】-Valid Parentheses
- 【LeetCode】20. Valid Parentheses
- leetcode 52: valid parentheses
- Leetcode Day5 20. Valid Parentheses Python 栈的实现
- [leetcode]Longest Valid Parentheses @ Python
- [leetcode] 20.Valid Parentheses
- leetcode Valid Parentheses
- leetcode - Longest Valid Parentheses
- LeetCode - 20. Valid Parentheses
- leetCode4.1.2(Longest Valid Parentheses)