中缀表达式
(或中缀记法)是一个通用的算术或逻辑公式表示方法, 操作符是以中缀形式处于操作数的中间(例:3 + 4),中缀表达式是人们常用的算术表示方法。与前缀表达式(例:+ 3 4)或后缀表达式(例:3 4 +)相比,中缀表达式不容易被计算机解析,但仍被许多程序语言使用,因为它符合人们的普遍用法。
确实,中缀表达式很符合人类的思想,但是让计算机理解起来却不那么容易,这里我们引进了后缀表达式
后缀表达式(也称为逆波兰表达式)
一个表达式E的后缀形式可以如下定义:
(1)如果E是一个变量或常量,则E的后缀式是E本身。
(2)如果E是E1 op E2形式的表达式,这里op是任何二元操作符,则E的后缀式为E1'E2' op,这里E1'和E2'分别为E1和E2的后缀式。
(3)如果E是(E1)形式的表达式,则E1的后缀式就是E的后缀式。
为了解释后缀表达式的好处,我们先来看看,计算机如何应用后缀表达式计算出9+(3-1)×3+10 ÷ 2=20的 ,转化为后缀表达式为9 3 1 - 3 × + 10 2 ÷+
规则:从左到右遍历表达式的每个数字和符号,遇到数字的就进栈,遇到是符号,就将处于栈顶的前两个数字出栈,进行运算