一个中缀式到其他式子的转换方法:
这里我给出一个中缀表达式a+b*c-(d+e)
第一步:按照运算符的优先级对所有的运算单位加括号,式子变成:((a+(b*c))-(d+e))
第二步:转换前缀与后缀表达式
前缀:把运算符号移动到对应的括号前面
则变成:-( +(a *(bc)) +(de)),把括号去掉:-+a*bc+de 前缀式子出现
后缀:把运算符号移动到对应的括号后面
则变成拉:((a(bc)* )- (de)+ )-,把括号去掉:abc*+de+- 后缀式子出现
发现没有,前缀式,后缀式是不需要用括号来进行优先级的确定的。
如果你习惯了他的运算方法,计算的时候也就是从两个操作数的前面
或者后面找运算符。而不是中间找,那么也就直接可以口算了。
原文:https://blog.csdn.net/qq_16209077/article/details/52448081