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