前缀、中缀和后缀表达式 中->前 / 中->后转换方法

在转换熟练以后,可以省略加括号的步骤

前缀、中缀和后缀表达式

(1)中缀表达式

中缀表达式就是常见的运算表达式,如(1 + 13) + 9 / 3。中缀表达式在书写和阅读上更直观和熟悉,因为我们通常习惯了使用中缀表达式来表示数学运算。需要注意的是,虽然中缀表达式在人类交流和理解方面有优势,但在计算机内部执行和计算时,前缀和后缀表达式更常见和有效。因此,在实际计算中,通常会将中缀表达式转换为前缀或后缀形式来进行处理和求值。


(2) 前缀表达式

前缀表达式又称波兰式,前缀表达式的运算符位于操作数之前。

这里计算机处理前缀、后缀表达式的方法暂不多写,有兴趣的可自行拓展

中->前(中缀表达式转换成前缀表达式):
例:a + (b - c) * d;

1. 对表达式的所有计算顺序按照优先级加上小括号:( a + ( (b - c) * d ) )
2. 把所有运算符号(如加减乘除)移动到当前括号的前面:+ ( a * ( - ( bc ) d ) )
3. 最后把小括号去掉,就得到了前缀表达式:+ a * - bcd

(3) 后缀表达式

后缀表达式又成逆波兰表达式,与前缀表达式相似,只是运算符位于操作数之后。

中->后(中缀表达式转换成后缀表达式):
例:a + (b - c) * d;

1. 对表达式的所有计算顺序按照优先级加上小括号:( a + ( (b - c) * d ) )
2. 把所有运算符号(如加减乘除)移动到当前括号的后面:( a (( bc ) - d ) * ) +
3. a b c - d * +

posted @ 2024-07-11 22:36  Befrepof  阅读(52)  评论(0编辑  收藏  举报