20. 有效的括号

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 # 空列表取反当然获得的就是非空

使用模拟栈或者哈希的方式判断是否形成括号
核心关键还是字典的构建

上一篇:第5章-4 分析活动投票情况 (20 分)


下一篇:python leetcode 205 同构字符串【简单题】