中缀与后缀表达式详解

1.介绍

中缀:(5+20+1∗3)/14

后缀:520+13∗+14/

中缀表达式,就是我们日常适用的算式,主要是运算符的优先级和括号会改变优先级。我们人用中缀表达式是很方便的,但是计算机算很不方便,所以就有了后缀表达式。

2.原理与代码

比如这样一个后缀表达式:ABCD-*+    ,怎么算呢?

       先从左到右扫描,如果遇上字母,则压倒栈中,这样就把A,B,C,D全部压到栈中了,遇到操作符-,则取出两个栈顶的元素C和D,计算C-D=E,再将E压入栈中即可

那么怎么将中缀表达式转化成后缀表达式呢?

        主要分为三步:

                                   1.按运算符优先级对所有运算符和运算数加括号

                                   2.将运算符移到对应的括号后

                                   3.去掉括号

中缀与后缀表达式详解