zoukankan      html  css  js  c++  java
  • 4.有效的括号

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

    有效字符串需满足:

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

    示例 1:

    输入:s = "()"
    输出:true
    示例 2:

    输入:s = "()[]{}"
    输出:true
    示例 3:

    输入:s = "(]"
    输出:false
    示例 4:

    输入:s = "([)]"
    输出:false
    示例 5:

    输入:s = "{[]}"
    输出:true

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/valid-parentheses
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    解题思路:

    这道题看到别人的思路,瞬间跪了。

    简直不能太牛,自己就不献丑了。

    外面一个大while循环,判断字符串中是否包含()[] {},只要包含其中任意一个则进入循环。

    循环中,将成对的()[] {}全部替换成空字符串,一直到找不到成对的。

    最后直接判断替换之后的字符串是否为空,如果不为空,说明存在不成对的括号。

    牛掰!

     1 class Solution(object):
     2     def isValid(self, s):
     3         """
     4         :type s: str
     5         :rtype: bool
     6         """
     7         while "()" in s or "[]" in s or "{}" in s:
     8             s = s.replace("()", "")
     9             s = s.replace("[]", "")
    10             s = s.replace("{}", "")
    11         return s == ""
    最懒的人就是整天忙得没时间学习、反思、成长的人。
  • 相关阅读:
    MySQL Delete 后,如何快速释放磁盘空间
    浅谈MySQl 主从复制
    MySQL 5.6,5.7 基于Shell 的一键安装
    【MySQL 5.7 】从库1032 报错处理
    633. Sum of Square Numbers
    find a balance point in an array
    Longest Common Prefix
    cubic root
    41. First Missing Positive
    build tree with balanced parenthesis
  • 原文地址:https://www.cnblogs.com/jockeyhao/p/15789198.html
Copyright © 2011-2022 走看看