6

问答题 6 /45

假设有如下字符串: (234453)[234]{2324} 现在,要求编程分析其括号配对是否正确。请自行选择下列两种方案之一实现该程序:
方案一:不考虑括号优先级,只考虑配对正确性;方案二:考虑括号优先级,比如{1[2(3)4]5} 是正确的。但是[1{2}3]是不正确的。

参考答案

方案一:
使用栈,碰到左括号入栈,碰到右括号出栈,看最后栈是否空,是否还有未匹配完的右括号。
方案二:
思路同上,但是检查压栈时要对括号做优先级检查。