后缀表达式计算——栈的应用
来源:互联网 发布:dijkstra算法求解过程 编辑:程序博客网 时间:2024/05/16 08:39
“test.cpp”
<strong><span style="font-size:18px;">#include<iostream>using namespace std;#include<stack>#include<assert.h>enum OP{OP_NUM,OP_SYMBOL,ADD,SUB,MUL,DIV,};struct Cell{int _symbol;int _value;};void test(){//12 3 4 + * 6 - 8 2 / +Cell RPNArray[] = \{\{OP_NUM,12},\{OP_NUM,3},\{OP_NUM,4},\{OP_SYMBOL,ADD},\{OP_SYMBOL,MUL},\{OP_NUM,6},\{OP_SYMBOL,SUB},\{OP_NUM,8},\{OP_NUM,2},\{OP_SYMBOL,DIV},\{OP_SYMBOL,ADD},\};int size = sizeof(RPNArray)/sizeof(RPNArray[0]);stack<int> s;for(int i = 0;i < size;i++){if(RPNArray[i]._symbol == OP_NUM){s.push(RPNArray[i]._value);}else{int right = s.top();s.pop();int left = s.top();s.pop();switch(RPNArray[i]._value){case ADD:{s.push(left + right);}break;case SUB:{s.push(left - right);}break;case MUL:{s.push(left * right);}break;case DIV:{s.push(left / right);}break;default:assert(false);}}}cout<<" jieguo = "<<s.top()<<endl;}int main(){test();return 0;}</span></strong>
0 0
- 栈的应用——后缀表达式的计算
- 后缀表达式计算——栈的应用
- 栈应用 - 后缀表达式的计算
- 后缀表达式计算-栈的应用
- 栈应用(中缀表达式转后缀表达式并计算后缀表达式的值)
- C++栈的应用——后缀表达式求值、中缀表达式到后缀表达式的转换
- 大话数据结构——栈的应用四则元算表达式求值(后缀表达式计算结果)
- Chapter4:栈的应用-后缀表达式的计算
- 栈的应用之后缀表达式的计算(同时验证是否为合法的后缀表达式)
- 栈的应用--算术表达式的求值(中缀转后缀然后计算后缀表达式的值)
- 基于栈的应用之计算后缀表达式
- 栈的应用--表达式计算&中缀转后缀
- 计算后缀表达式的值(栈应用二)
- 数据结构::如何计算后缀表达式--栈的一个小应用
- 栈的应用——中缀表达式转后缀表达式,后缀表达式的求值,中缀表达式求值
- 数据结构—中缀表达式转后缀表达式算法及实现—栈的应用—计算表达式(C++代码实现)(1)
- 栈应用——中缀转后缀+后缀计算
- 栈的应用—中缀转后缀求表达式值
- 线性代数复习 第五章 特征值和特征向量
- 游戏菜单级联
- A bite of Python
- MBProgressHUD
- Python数字图像处理
- 后缀表达式计算——栈的应用
- 第一行代码系列第二章——向下一个活动传递数据
- Mysql Innodb锁分析
- 游戏菜单级联
- 线性代数复习 第六章 二次型
- 1117. Eddington Number(25)-PAT甲级真题
- *[Lintcode] Decode Ways
- VPS主机IP被墙怎么办 导致IP被墙的原因
- 244.1