LeetCode热题Hot100 - 有效的括号

一刷~

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

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。
  3. 每个右括号都有一个对应的相同类型的左括号。

思路:

使用一个栈维护s中出现的(、[、{信息,每次遇到)、]、},判断栈是否为空,或栈顶的左括号是否和右括号匹配,不匹配直接返回False。

s遍历结束后,栈为空返回True,否则返回False。

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

 

相关推荐

  1. LeetCodeHot100 - 有效括号

    2024-04-09 14:38:02       37 阅读
  2. LeetCodeHot100 - 最长有效括号

    2024-04-09 14:38:02       31 阅读
  3. LeetCodeHot100 - 括号生成

    2024-04-09 14:38:02       36 阅读
  4. LeetCode100】20. 有效括号(栈)

    2024-04-09 14:38:02       45 阅读
  5. leetcodeHOT 32. 最长有效括号

    2024-04-09 14:38:02       35 阅读
  6. LeetCode_Hot100_栈_20有效括号_Python

    2024-04-09 14:38:02       51 阅读
  7. leetcodeHOT 22. 括号生成(回溯)

    2024-04-09 14:38:02       38 阅读
  8. LeetCode第20 - 有效括号

    2024-04-09 14:38:02       66 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-09 14:38:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-09 14:38:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-09 14:38:02       82 阅读
  4. Python语言-面向对象

    2024-04-09 14:38:02       91 阅读

热门阅读

  1. 2024.4.8作业

    2024-04-09 14:38:02       31 阅读
  2. 3.10 Python数据类型转换

    2024-04-09 14:38:02       31 阅读
  3. c#有dll源码,整合到自己的exe中

    2024-04-09 14:38:02       38 阅读
  4. SQL Server 数据类型

    2024-04-09 14:38:02       32 阅读
  5. 目标 url 存在 host 头攻击漏洞

    2024-04-09 14:38:02       33 阅读
  6. 软件测试与QA的区别

    2024-04-09 14:38:02       36 阅读
  7. 题目:学习使用按位与 & 。

    2024-04-09 14:38:02       25 阅读
  8. MYSQL 5.7重置root密码

    2024-04-09 14:38:02       30 阅读
  9. idea 使用springboot helper 创建springboot项目

    2024-04-09 14:38:02       25 阅读
  10. git lfs如何使用

    2024-04-09 14:38:02       29 阅读
  11. 云数据库AWS Aurora(一)

    2024-04-09 14:38:02       33 阅读
  12. 关于ros中的回旋函数

    2024-04-09 14:38:02       30 阅读
  13. git知识

    git知识

    2024-04-09 14:38:02      27 阅读