当前位置:首页python > 正文

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
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击