要點:
1.字典的使用。map['{']='}'
2.符號是成雙成對出現,第一次'{'的字典對應'}'被收入到stack後,第二次'}'沒有在字典中所以他和stack最上面的字符是一致的。
3.pop()移出並賦值最後一個元素
4.stack爲空表示所有字符都是成對的
class Solution:
def isValid(self,s):
stack = []
map = {
"{":"}",
"[":"]",
"(":")"
}
for x in s:
if x in map:
stack.append(map[x])
else:
if len(stack)!=0:
top_element = stack.pop()
if x != top_element:
return False
else:
continue
else:
return False
return len(stack) == 0