题解 | 括号配对问题

括号配对问题

https://www.nowcoder.com/practice/57260c08eaa44feababd05b328b897d7

s = input().strip()
stack = []
# 定义括号匹配映射(右括号对应左括号)
match = {')': '(', ']': '['}

for char in s:
    # 只处理括号字符
    if char in match.values():  # 遇到左括号,入栈
        stack.append(char)
    elif char in match.keys():  # 遇到右括号,检查匹配
        if not stack or stack.pop() != match[char]:
            print("false")
            exit()  # 不匹配直接退出
    # 其他字符忽略,不处理

# 所有括号处理完,栈空则合法
print("true" if not stack else "false")

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务