
Photo by
kumokesu
20. Valid Parentheses
class Solution:
def isValid(self, s):
brackets = ['(', ')',' ', '{', '}', ' ', '[' , ']']
s = list(s)
stack = []
stack.append(s[0])
for i in range(1, len(s)):
# stack.append(s[i])
if len(stack) != 0 and (brackets.index(s[i]) is brackets.index(stack[-1]) + 1):
stack.pop()
else:
stack.append(s[i])
if len(stack) == 0:
return True
else:
return False
simplified
class Solution:
def isValid(self, s):
d = {")": "(", "]": "[", "}": "{"}
q = [None]
for i in s:
if i in d and d[i] == q[-1]:
q.pop()
else:
q.append(i)
return len(q)==1