class Solution:
def isValid(self, s: str) -> bool:
dic = {')':'(',']':'[','}':'{'}
stack = [] # 列表模拟stack
for i in s:
if stack and i in dic:
if stack[-1] == dic[i]: # 限定条件列表非空
stack.pop()
else: return False #
else:
stack.append(i)
return not stack # 空列表取反当然获得的就是非空
使用模拟栈或者哈希的方式判断是否形成括号
核心关键还是字典的构建