表达式求值
- 简介
表达式求值:对表达式进行求值操作,也就是实现一个计算器功能.如输入:(5+2)-2*3,得出1.
正常面试中,只会设计简单的四则运算: +-*/()
- 规则
表达式求值的实现方式是通过:双栈(操作数栈,运算符栈)的数据结构实现.
实际运算时,根据运算符的优先级控制入栈和运算操作.
运算符优先级:栈顶运算符优先级和待入栈运算符优先级比较 小于:待入栈运算符入栈; 大于:先出栈计算,待运算符再入栈; 忽略左括号; 右括号:出栈运算再入栈;
运算符的优先级关系
- 执行流程