问题:

一个表达式中包含三种括号,( )   [ ]   { },且这三种括号可以按照任意次序嵌套使用。判别括号是否正确配对出现。

核心思想:

(1)扫描表达式,

(2)如果是左括号则入栈,继续扫描

(3)如果是右括号则  弹出栈顶括号   与当前右括号判断是否匹配;若匹配则继续扫描,否则返回匹配不正确,不再扫描;

(4)扫描完成后若栈为空则正确配对,否则不正确。

流程图:

括号匹配判断

 

相关文章: