【Leetcode】20. Valid Parentheses
2016-12-17 09:46
393 查看
思路:
(1)用栈存储所有的字符。
(2)遍历该字符串的所有字符。
(3)若是左括号,则入栈。
(4)若是右括号,分两种情况考虑:若栈非空,则出栈,比较左右括号是否对应;否则直接返回false。
(5)遍历完整个字符串后,若栈空,则满足条件,返回true;否则不满足条件,返回false。
Runtime:6ms
(1)用栈存储所有的字符。
(2)遍历该字符串的所有字符。
(3)若是左括号,则入栈。
(4)若是右括号,分两种情况考虑:若栈非空,则出栈,比较左右括号是否对应;否则直接返回false。
(5)遍历完整个字符串后,若栈空,则满足条件,返回true;否则不满足条件,返回false。
public class Solution { public boolean isValid(String s) { Stack<Character> stack = new Stack<Character>(); for(int i = 0; i < s.length(); i++) { char ch = s.charAt(i); if (ch == '{' || ch == '['|| ch =='(') stack.push(ch); else { if (!stack.empty()) { char c = stack.pop(); if (!(c == '{' && ch == '}' || c == '[' && ch == ']' || c == '(' && ch == ')')) return false; } else return false; } } if (stack.empty()) return true; else return false; } }
Runtime:6ms
相关文章推荐
- leetcode 20 Valid Parentheses
- LeetCode 20 : Valid Parentheses (Java)
- Leetcode 20 Valid Parentheses stack的应用
- LeetCode20 Valid Parentheses
- leetcode 20 Valid Parentheses
- leetcode20:Valid Parentheses
- python写算法题:leetcode: 20. Valid Parentheses
- 蜗牛慢慢爬 LeetCode 20. Valid Parentheses [Difficulty: Easy]
- 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
- Leetcode - 20. Valid Parentheses
- LeetCode 20. Valid Parentheses
- [LeetCode20]Valid Parentheses