python判断括号配对的程序
作者:野牛程序员:2023-07-11 07:57:02python阅读 2660
以下是一个简单的Python程序,用于判断括号是否正确配对:
def is_matching_parentheses(expression):
stack = []
opening_brackets = ['(', '[', '{']
closing_brackets = [')', ']', '}']
for char in expression:
if char in opening_brackets:
stack.append(char)
elif char in closing_brackets:
if len(stack) == 0:
return False
top = stack.pop()
if opening_brackets.index(top) != closing_brackets.index(char):
return False
return len(stack) == 0
# 测试程序
expression1 = "((2 + 3) * 4)"
expression2 = "({[}])"
expression3 = "({[()]})"
expression4 = "()()()"
print(is_matching_parentheses(expression1)) # True
print(is_matching_parentheses(expression2)) # False
print(is_matching_parentheses(expression3)) # True
print(is_matching_parentheses(expression4)) # True该程序使用了栈的数据结构来判断括号的配对情况。它遍历表达式中的每个字符,如果遇到开括号,则将其推入栈中;如果遇到闭括号,则将栈顶的开括号弹出,并检查两者是否匹配。如果所有的字符都处理完毕后,栈为空则说明括号正确配对,否则括号不配对。在测试程序中,输出的结果显示了每个表达式的括号配对情况。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:python对列表里的数进行平方
- 下一篇:python map的意义与用法
