【Leetcode】【python】Valid Parentheses
2017-08-23 10:41
337 查看
题目大意
判断括号开闭解题思路
栈简单题,思路正确即可
代码
class Solution(object): def isValid(self, s): """ :type s: str :rtype: bool """ stack = [] for char in s: if char == '(' or char == '{' or char == '[': stack.append(char) continue elif char == ')': temp = '(' elif char == '}': temp = '{' elif char == ']': temp = '[' else: return False if stack: if stack[-1] == temp: stack.pop() else: return False else: return False if len(stack) != 0: return False return True
由于pop()时会输出pop的数值,所以可以简化:
class Solution: # @return a boolean def isValid(self, s): stack = [] for i in range(len(s)): if s[i] == '(' or s[i] == '[' or s[i] == '{': stack.append(s[i]) if s[i] == ')': if stack == [] or stack.pop() != '(': return False if s[i] == ']': if stack == [] or stack.pop() != '[': return False if s[i] == '}': if stack == [] or stack.pop() != '{': return False if stack: return False else: return True
总结
相关文章推荐
- Longest Valid Parentheses @Leetcode -- Python
- 20. Valid Parentheses Leetcode Python
- Valid Parentheses @Leetcode -- Python
- [LeetCode]题解(python):032-Longest Valid Parentheses
- 32. Longest Valid Parentheses leetcode python new season 2016
- 20. Valid Parentheses leetcode Python 2016 new Season
- [leetcode] Longest Valid Parentheses @python
- python写算法题:leetcode: 32. Longest Valid Parentheses
- python写算法题:leetcode: 20. Valid Parentheses
- 【Leetcode】【python】Longest Valid Parentheses
- [LeetCode]题解(python):020-Valid Parentheses
- leetcode 日经贴,python code -Longest Valid Parentheses
- leetcode Longest Valid Parentheses python
- Python学习——leetcode(Valid Parentheses)
- LeetCode 32 Longest Valid Parentheses (C,C++,Java,Python)
- [leetcode]Valid Parentheses @ Python
- Leetcode Day5 20. Valid Parentheses Python 栈的实现
- 【leetcode】20. Valid Parentheses(Python & C++)
- Leetcode-Valid Parentheses-Python
- LeetCode 20 Valid Parentheses (C,C++,Java,Python)