解析算术表达式
2013-07-06 20:46
519 查看
解析算术表达式
需要用到的存储结构是栈,下面是步聚:1,将算术表达式转换成另一种形式:后缀表达式。
2,计算后缀表达式的值。
简单说明下后缀表达式: 我们平时用到的都是中缀表达式,像A+B, B+C*A等这样的,转换成后缀表达式的话就是这样的:AB+, BCA+*,
一个表来说明:
转换的步聚:
1,从左到右读取算式。
2,已经读到了可以计算值的两个操作数和一个操作符时,就可以计算了,并用计算结果代替那两个操作数和那个操作符。
3,继续这个过程——从左到右,能算就算——直到表达式的结尾。
一个例子:
记住一点就是,栈(后进先出,LIFO)存储的是操作符,这个是比较重要的。
让我们看个直观的例子:
相关文章推荐
- Java数据结构和算法-栈和队列(4-解析算术表达式)
- 利用堆栈解析算术表达式
- 堆栈解析算术表达式(总结)
- 栈的应用:解析算术表达式
- 解析算术表达式
- JAVA数据结构学习实例--利用栈解析算术表达式
- 利用堆栈解析算术表达式一:基本过程
- 堆栈解析算术表达式
- 用栈解析算术表达式[Python版]
- 算术表达式的解析——后缀表达式的运用
- 堆栈-解析算术表达式
- 数据结构之应用"栈(Stack)"实现: 解析算术表达式及计算
- Java数据结构——解析算术表达式
- 数据结构之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java)
- dbms_aw.eval_number 解析算术表达式
- 栈的应用:解析算术表达式
- 设计自制编程语言Monkey编译器:使用普拉特解析法解析复杂的算术表达式
- 解析算术表达式
- 数据结构之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java)
- 04 Java API:arraylist实现算术表达式的解析