本文共 732 字,大约阅读时间需要 2 分钟。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。输入:s = "()"
输出:true示例 2:输入:s = "()[]{}"
输出:true示例 3:
输入:s = "(]"输出:false示例 4:
输入:s = "([)]"输出:false示例 4:
输入:s = "}()"输出:false使用栈的特点,因为遍历字符串时候,肯定先遇到左括号,所以先将左括号压入栈,等到遇到右括号时候就可以从栈顶取出值进行比对了
class Solution(object): def isValid(self, s): """ :type s: str :rtype: bool """ stack = [] dic = {"{": "}", "[": "]", "(": ")"} for i in s: if i in dic: stack.append(i) else: if len(stack) == 0: return False if dic.get(stack.pop()) != i: return False return len(stack) == 0
转载地址:http://cwybz.baihongyu.com/