平常所说的算术表达式就是中缀表达式,而后缀式就是逆波兰式! 3) 由中缀表达式转化为后缀表达的具体步骤: ① 在表达式字符串的末尾加一个代表结束的辅助符,比如”#”。 ② 从头开始扫描表达式,并判断当前的每一个字符。 ③ 取当前的一个字符,如果当前字符是代表数字,则进逆波兰式的栈,如果是运算符,则转入④,如果是“#“,则结束。 ④ 比较当前运算符与临时栈中的栈顶运算符,如果栈顶运算符比当前运算符优先级高,则弹出一个运算符放进逆波兰式栈中,并继续④。否则把当前运算符进临时栈,转入②. 后缀表达式由一系列运算符和运算数组成。后缀机可用如下方法计算后缀表达式的值:当遇到运算数时,把它放入栈中;遇到运算符时,从栈中弹出适当数量的运算数执行该运算符对应的运算,并把结果放回栈中。对最常见的二元运算符说来,弹出两个运算数。当计算完整个后缀表达式时,栈中只有一个元素,即表达式的结果。因为不存在优先级关系,因此后缀是计算表达式的一种很自然的形式。而每一个合法的中缀表达式都可以转化成为后缀表达式。