转载自:https://blog.csdn.net/tomcmd/article/details/48603097
一. 中缀式转化成前缀式和后缀式:
一个中缀式到其他式子的转换方法
这里我给出一个中缀表达式
a+b*c-(d+e)
第一步:按照运算符的优先级对所有的运算单位加括号
式子变成拉:((a+(b*c))-(d+e))
第二步:转换前缀与后缀表达式
中缀转前缀:把运算符号移动到对应的括号前面
则变成拉:-( +(a *(bc)) +(de))
把括号去掉:-+a*bc+de 前缀式子出现
中缀转后缀:把运算符号移动到对应的括号后面
则变成拉:((a(bc)* )- (de)+ )-改成:((a(bc)* )+ (de)+ )-
把括号去掉:abc*-de+- 后缀式子出现改成:abc*+de+-
二. 前缀式转化成中缀式:
-+a*bc+de
从后往前遇到运算符,将其与后面两个运算数结合,加上括号,当成新的运算数
变成:(-(+a(*bc))(+de))
将运算符加在括号内运算数中间。变成:((a+(b*c))-(d+e))
去掉部分括号:a+b*c-(d+e)
三. 后缀式转化成中缀式:
abc*+de+-
从前遇到运算符,将其与前面两个运算数结合,加上括号,当成新的运算数
变成:((a(bc*)+)(de+)-)
将运算符加在括号内运算数中间。变成:((a+(b*c))-(d+e))
去掉部分括号:a+b*c-(d+e)
</div></div> <!----></div></div>
<script type="text/javascript" src="./dist/vendor.js"></script>
<script type="text/javascript" src="./dist/detail.js"></script>