https://leetcode.com/problems/valid-parentheses/
2015-05-13 23:10
417 查看
https://leetcode.com/problems/valid-parentheses/
也是堆栈
左括号全部入栈 如果遇到任何一种右括号
弹出一个元素 如果匹配 就继续
如果不匹配 就直接return False
当结束时 栈应该是空的
如果不为空 说明多很多做括号 也要False
class Solution:
# @param {string} s
# @return {boolean}
def isValid(self, s):
left=['(','{','[']
right=[')','}',']']
list=[]
for i in s:
if i in left:
list.append(i)
else:
if list==[]:
return False
elif i==')':
if list[-1]=='(':
list.pop(-1)
else:
return False
elif i=='}':
if list[-1]=='{':
list.pop(-1)
else:
return False
else:#i==']':
if list[-1]=='[':
list.pop(-1)
else:
return False
if len(list)==0:
return True
else:
return False
也是堆栈
左括号全部入栈 如果遇到任何一种右括号
弹出一个元素 如果匹配 就继续
如果不匹配 就直接return False
当结束时 栈应该是空的
如果不为空 说明多很多做括号 也要False
class Solution:
# @param {string} s
# @return {boolean}
def isValid(self, s):
left=['(','{','[']
right=[')','}',']']
list=[]
for i in s:
if i in left:
list.append(i)
else:
if list==[]:
return False
elif i==')':
if list[-1]=='(':
list.pop(-1)
else:
return False
elif i=='}':
if list[-1]=='{':
list.pop(-1)
else:
return False
else:#i==']':
if list[-1]=='[':
list.pop(-1)
else:
return False
if len(list)==0:
return True
else:
return False
相关文章推荐
- https://leetcode.com/problems/longest-valid-parentheses/
- https://leetcode.com/problems/valid-palindrome/
- https://leetcode.com/problems/valid-sudoku/
- Leetcode - Valid Parentheses
- leetcode Valid Parentheses 验证括号
- LeetCode: Valid Parentheses [020]
- 【LeetCode】Longest Valid Parentheses
- https://leetcode.com/problems/merge-sorted-array/
- [勇者闯LeetCode] 20. Valid Parentheses
- 【LeetCode】20. Valid Parentheses
- [LeetCode]Longest Valid Parentheses
- LeetCode Longest Valid Parentheses 解题报告
- leetcode 题解 || Valid Parentheses 问题
- LeetCode 之 Longest Valid Parentheses(栈)
- [LeetCode]20. Valid Parentheses
- leetcode题解-20. Valid Parentheses
- LeetCode - Valid Parentheses
- leetcode之top100_01_twoSsum/top100_20_ValidParentheses
- LeetCode之“动态规划”:Valid Parentheses && Longest Valid Parentheses
- [leetcode]Longest Valid Parentheses