基本思路
1.从左往右扫描下一个元素,直到处理完所有元素
2.若扫描到操作数则压入栈,并回到1;否则执行3
3.若扫描到运算符,则弹出两个栈顶元素,执行相应的运算,运算结果压回栈顶。回到1.
代码
【注】:
碰到操作符进行运算时,先弹出的元素为右操作数,后弹出的元素为左操作数。
#include <iostream>
#include <stack>
#include <cstring>
using namespace std;
bool isNum(char ch){
if(ch>='0'&&ch<='9')return true;
return false;
}
int main()