本文实例为大家分享了C++实现逆波兰表达式的具体代码,供大家参考,具体内容如下
当我们输入一个数学表达式,是中缀表达式,我们首先转换为后缀表达式(逆波兰表达式),然后再进行求值。
在《大话数据结构》的104-100页有详细的介绍,下面是我理解之后的代码实现。
代码思路:
(1)首先对输入的中缀表达式合法性进行判断,boolisStringLegal(constchar*str);函数实现。
(2)然后把中缀表达式转换为后缀表达式。
(3)根据后缀表达式求出结果,doublegetTheResult(vector&vec);函数实现。
注意:表达式的运算符可以输入加、减、乘、除、括号,输入的数据为整形数据,计算结果为double型数据。
#include
#include
#include