[Leetcode] 20. 有效的括号

20. 有效的括号

来源: 20. 有效的括号

1. 题目描述

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。

2. 解题思路

使用栈

3. 代码

class Solution:
    def isValid(self, s: str) -> bool:
        if len(s) & 1:
            return False
        stack = []
        for i in s:
            if i == '(':
                stack.append(')')
            elif i == '[':
                stack.append(']')
            elif i == '{':
                stack.append('}')
            elif not stack or i != stack.pop():
                return False
        if not stack:
            return True
        return False

# 参考:xiao-xue-66
# 链接:https://leetcode-cn.com/problems/valid-parentheses/solution/pythonti-jie-fu-zhu-zhan-fang-fa-by-xiao-xue-66/

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容