概述
在处理表达式问题时,使用后缀表达式去处理会使程序更加简洁。
做法
维护一个符号栈,从左到右扫描这个表达式,对于当前位
- 为变量或操作数,输出
- 为运算符,那么检查符号栈的栈顶元素
- 栈顶元素的优先级大于或等于这个运算符的优先级,并且不为左括号,输出并弹出之
- 否则将当前运算符压入符号栈,结束
- 为左括号,将左括号压入符号栈
- 为右括号,将栈顶元素不断输出直到遇到一个左括号,并将左括号弹出而不输出
后缀表达式的运用
在我们计算这个表达式时,需要维护一个元素栈,如果我们遇到
- 一个变量或操作数,压入栈中
- 一个操作符,取出栈顶两个元素,运算后压回栈中
最终处理完表达式以后剩下的一个数就是结果。