利用python和栈,实现括号匹配检验功能
时间: 2023-05-15 08:04:56 浏览: 160
可以使用栈来实现括号匹配检验功能,具体实现如下:
```python
def check_parentheses(string):
stack = []
for char in string:
if char in ['(', '[', '{']:
stack.append(char)
elif char in [')', ']', '}']:
if not stack:
return False
if char == ')' and stack[-1] == '(':
stack.pop()
elif char == ']' and stack[-1] == '[':
stack.pop()
elif char == '}' and stack[-1] == '{':
stack.pop()
else:
return False
return not stack
```
这个函数接受一个字符串作为参数,遍历字符串中的每个字符,如果是左括号,则将其入栈;如果是右括号,则从栈中取出一个元素进行匹配,如果匹配成功,则继续遍历,否则返回 False。最后,如果栈为空,则说明所有括号都匹配成功,返回 True;否则返回 False。
例如,对于字符串 "((()))",函数返回 True;对于字符串 "([)]",函数返回 False。
阅读全文
相关推荐
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)