代码随想录day12-堆栈的应用

有效的括号

题目链接

题目思路:字符串的匹配优先考虑堆栈这种结构,实际上也是数组,但具有先入后出的结构,但放入相反的元素这种思路值得注意

代码实现:

class Solution:
    def isValid(self, s: str) -> bool:
        # 字符串的匹配问题优先考虑堆栈,在python中堆栈的底层也是数组结构
        tempStack = []
        for i in s:
            if i=="(":
                tempStack.append(")")
            elif i== "[":
                tempStack.append(']')
            elif i == "{":
                tempStack.append("}")
            elif not bool(tempStack) or tempStack[-1] != i:
                return False
            else:
                tempStack.pop()
        return not tempStack

你可能感兴趣的:(python,数据结构,算法)