中缀表达式转后缀表达式
首先借助辅助栈,遇到数字和字符直接打印,遇到符号把当前符号和栈顶元素进行优先级比较,如果当前元素优先级高,直接入栈,如果当前元素优先级低,则将栈内元素一次出栈再将当前元素入栈,遇到左括号,无条件入栈,遇到右括号,将栈内元素依次输出,直到左括号为止。
中缀表达式:(9+6)* 7 - 8/2=====>>>>>>后缀表达式:9 6 + 7 * 8 2 / -
后缀表达式转中缀表达式
借助辅助栈,遇到数字或字符直接入栈,遇到符号,将栈顶元素的下一个和栈顶元素构成表达式
后缀表达式:9 6 + 7 * 8 2 / - ======>>>>>>中缀表达式:(9+6)*7-8/2
中缀表达式转后缀表达式快速方法
将所有表达式括起来然后符号位放到右括号后面
(9+6)*7-8/2 ==>> ( ( (9+6)*7 ) - (8/2) ) ==>> (((96)+7)*(82)/)- 括号去掉得到后缀表达式: 96+7*82/-