中缀表达式转后缀表达式
转换过程需要用到(符号)栈,具体过程如下:
1)如果遇到操作数,我们就直接将其输出。
2)如果遇到操作符,比较优先级。
a:操作符>栈顶元素 操作符直接入栈
b:操作符<=栈顶元素……………………………出栈输出,直到操作符>栈顶元素,操作符直接入栈
c:遇到左括号时我们也将其放入栈中。
d:如果遇到一个右括号,则将栈元素弹出,将弹出的操作符输出直到遇到左括号为止。注意,左括号只弹出并不输出。
3)如果我们读到了输入的末尾,则将栈中所有元素依次弹出,输出。
中缀表达式转后缀表达式
转换过程需要用到(符号)栈,具体过程如下:
1)如果遇到操作数,我们就直接将其输出。
2)如果遇到操作符,比较优先级。
a:操作符>栈顶元素 操作符直接入栈
b:操作符<=栈顶元素……………………………出栈输出,直到操作符>栈顶元素,操作符直接入栈
c:遇到左括号时我们也将其放入栈中。
d:如果遇到一个右括号,则将栈元素弹出,将弹出的操作符输出直到遇到左括号为止。注意,左括号只弹出并不输出。
3)如果我们读到了输入的末尾,则将栈中所有元素依次弹出,输出。