请帮我写一个程序,实现括号栈并判断括号是否匹配
时间: 2023-05-12 11:04:05 浏览: 90
利用栈实现括号匹配的检验
4星 · 用户满意度95%
好的,以下是实现括号栈并判断括号是否匹配的 Python 代码:
```python
def is_valid(s: str) -> bool:
stack = []
mapping = {")": "(", "}": "{", "]": "["}
for char in s:
if char in mapping:
top_element = stack.pop() if stack else '#'
if mapping[char] != top_element:
return False
else:
stack.append(char)
return not stack
print(is_valid("()[]{}")) # True
print(is_valid("([)]")) # False
```
这个程序使用栈来判断括号是否匹配。我们遍历字符串中的每个字符,如果是左括号,就将其压入栈中;如果是右括号,就将栈顶元素弹出并与当前字符进行匹配。如果匹配成功,就继续遍历;否则,就返回 False。最后,如果栈为空,就说明所有括号都匹配成功,返回 True;否则,返回 False。
希望这个程序能够帮到你!
阅读全文