有效的括号给定一个只包括 的字符串判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。例如输入字符串输出为True。输入字符串输出为False。输入字符串输出为True。要求设计满足题目条件的如下方法:用import sysfrom collections import dequeif __name__ == __m
isValid函数的代码实现:
def isValid(s: str) -> bool: stack = deque() for c in s: if c == '(' or c == '{' or c == '[': stack.append(c) else: if not stack: return False if c == ')' and stack[-1] == '(': stack.pop() elif c == '}' and stack[-1] == '{': stack.pop() elif c == ']' and stack[-1] == '[': stack.pop() else: return False return not stack
该函数使用了一个栈来存储左括号,遇到右括号时判断栈顶的左括号是否匹配,匹配则弹出栈顶元素,不匹配则返回False。最后判断栈是否为空,为空则说明所有左括号都得到了匹配,返回True,否则返回False。
原文地址: https://www.cveoy.top/t/topic/bEEt 著作权归作者所有。请勿转载和采集!