python判断括号配对的程序
作者:野牛程序员:2023-07-11 07:57:02python阅读 2325
以下是一个简单的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的意义与用法