中缀表达式:a+b*c+d
后缀表达式:abc*+d+
手写时:
将中缀按运算顺序加括号(a+(bc)+d),将运算符号加到括号后有(a(bc)+d)+,再将括号去除,得abc*+d+
计算机时利用栈来运算:
a:进表达式
栈 [ ] 表达式 :a
+:进栈
栈 [ +] 表达式 :a
b:进表达式
栈 [ +] 表达式 :ab
*:进栈
栈 [*+] 表达式 :ab
c:进表达式
栈 [ *+] 表达式 :abc
+:’*‘以及’+‘出栈然后’+'再进栈
栈 [ +] 表达式 :abc*+
d:进表达式
栈 [ +] 表达式 :abc*+d
结束后全部出栈
表达式:abc*+d+
带括号例子:
a+b*(c+d)*e+f-g/h*i
手写法:
(( a+(( b*( c+d ))*e ))+( f-(( g/h )*i )))
(( a(( b( cd )+)*e )*)+f (( gh )/i )*-)+
abcd+*e*+fgh/i*-+
https://blog.csdn.net/qianyayun19921028/article/details/89228263