计算表达式括号匹配问题假定表达式中只包含两种括号[]、(),例如表达式:A×[(B-C)+(D-E)]/(F+G)1.
A×[(B-C)+(D-E)]/(F+G)解题思路:借助于数组顺序处理表达式中的每个括号,遇到左括号依次存入数组,遇到右括号,则与数组最上部的左括号匹配,如果发现括号匹配错误,则终止检测过程。如果匹配成功,则将顶部的左括号移走。继续往下…,一直到最后一个括号pos=-12102.
A×[(B-C)+(D-E)]/(F+G)pos=-1210210[pos=03.
A×[(B-C)+(D-E)]/(F+G)pos=0210pos=1[(4.
A×[(B-C)+(D-E)]/(F+G)pos=0210pos=1[(5.
A×[(B-C)+(D-E)]/(F+G)pos=0210pos=1[(6.
A×[(B-C)+(D-E)]/(F+G)pos=0210pos=1[(7.
A×[(B-C)+(D-E)]/(F+G)pos=-1210pos=0[8.
A×[(B-C)+(D-E)]/(F+G)pos=0210pos=-1(9.
A×[(B-
原创力文档

文档评论(0)