zoukankan      html  css  js  c++  java
  • leetcode 20. 有效的括号 (python)

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

    有效字符串需满足:

    左括号必须用相同类型的右括号闭合。
    左括号必须以正确的顺序闭合。
    注意空字符串可被认为是有效字符串。

    示例 1:

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

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

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

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

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

    class Solution:
        def isValid(self, s: str) -> bool:
            stack=[]                            #设置一个列表,把该列表当做栈来使用即可。
            dic={')':'(','}':'{',']':'['}       #使用字典存储括号,并且右括号为key,左括号为value
            for char in s:
                if char in dic.values():        #左括号就入栈
                    stack.append(char)
                elif char in dic.keys():        #有右括号的话就进行比较,
                    if stack==[] or dic[char] != stack.pop():
                        return False
                else:
                    return False                #不再字典中的输入直接输出错误
    
            return stack==[] 

    参考:https://blog.csdn.net/gui951753/article/details/81985629 

  • 相关阅读:
    NOIP提高组2004 合并果子题解
    RMQ问题之ST算法
    7.18考试
    7.18
    7.17
    7.16
    7.15
    7.14
    7.13考试
    7.13
  • 原文地址:https://www.cnblogs.com/xiaotongtt/p/11312466.html
Copyright © 2011-2022 走看看