20. Valid Parentheses

作者: Chrisbupt | 来源:发表于2019-01-07 21:46 被阅读0次

使用栈数据结构:

  1. 遇到左括号,需要压栈。
  2. 遇到右括号,判断栈顶是否和当前右括号匹配;若不匹配则返回false,否则匹配弹出栈顶。
  3. 最后判断栈是否为空;若为空则合法,否则不合法。
class Solution:
    # @return a boolean
    def isValid(self, s):
        stack = []
        dict = {"]":"[", "}":"{", ")":"("}
        for char in s:
            if char in dict.values():
                stack.append(char)
            elif char in dict.keys():
                if stack == [] or dict[char] != stack.pop():
                    return False
            else:
                return False
        return stack == []

相关文章

网友评论

    本文标题:20. Valid Parentheses

    本文链接:https://www.haomeiwen.com/subject/yjoprqtx.html