判断字符串的括号是否正确配对python
时间: 2023-06-09 09:08:26 浏览: 120
判断左右括号是否匹配
可以通过栈来判断字符串中的括号是否正确配对,具体实现如下:
```python
def is_valid(s):
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
```
该函数先定义了一个空栈和一个括号映射表,然后遍历字符串中的每一个字符。如果字符是右括号,则取出栈顶元素与该括号对应的左括号比较,如果不匹配,说明括号不配对,返回 False;如果是左括号,则将其放入栈中。遍历结束后,如果栈为空,说明所有括号都配对成功,返回 True。如果栈不为空,说明有括号没有配对成功,也返回 False。
阅读全文