leetCode:Evaluate Reverse Polish Notation
来源:互联网 发布:诺基亚5250软件下载 编辑:程序博客网 时间:2024/06/16 11:03
Evaluate the value of an arithmetic expression in Reverse Polish Notation.
Valid operators are +
, -
, *
, /
. Each operand may be an integer or another expression.
Some examples:
["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9 ["4", "13", "5", "/", "+"] -> (4 + (13 / 5)) -> 6
#include<iostream>#include<vector>#include<string>#include<stdlib.h>using namespace std;class Solution{public: int eval_expression(vector<string> & tokens, int & pt); int evalRPN(vector<string> &tokens); };int Solution::eval_expression(vector<string> &tokens,int &pt){ string s=tokens[pt]; if(s=="+"||s=="-"||s=="*"||s=="/"){ pt--; int v2=eval_expression(tokens,pt); pt--; int v1=eval_expression(tokens,pt); if(s=="+") return v1+v2; else if(s=="-") return v1-v2; else if(s=="*") return v1*v2; else return v1/v2; }else{ return atoi(s.c_str()); }}int Solution::evalRPN(vector<string> &tokens){ int pt=tokens.size()-1; return eval_expression(tokens,pt);}int main(){ string array[5]={"2","1","+","3","*"}; vector<string> vs(array,array+5);// vector<string>::iterator it;// for(it=vs.begin();it!=vs.end();it++)// cout<< *it << " ";// cout<<endl; Solution s; int length=4; int sum=s.eval_expression(vs,length); cout<<sum<<endl; return 0;}
0 0
- Evaluate Reverse Polish Notation | leetcode
- leetcode-Evaluate Reverse Polish Notation
- Leetcode: Evaluate Reverse Polish Notation
- LeetCode - Evaluate Reverse Polish Notation
- LeetCode | Evaluate Reverse Polish Notation
- Leetcode: Evaluate Reverse Polish Notation
- Leetcode: Evaluate Reverse Polish Notation
- Evaluate Reverse Polish Notation (LeetCode)
- leetcode: Evaluate Reverse Polish Notation
- Leetcode Evaluate Reverse Polish Notation
- [LeetCode] Evaluate Reverse Polish Notation
- [LeetCode] Evaluate Reverse Polish Notation
- Evaluate Reverse Polish Notation -- LeetCode
- 【LeetCode】Evaluate Reverse Polish Notation
- LeetCode-Evaluate Reverse Polish Notation
- LeetCode:Evaluate Reverse Polish Notation
- LeetCode Evaluate Reverse Polish Notation
- Leetcode:Evaluate Reverse Polish Notation
- 笑话---更新内容
- HDU_ACM-2024 C语言合法标识符
- 面向对象概述
- 数据存储过程
- tomcat服务器闪退问题及配置虚拟主机
- leetCode:Evaluate Reverse Polish Notation
- MKNetworkKit: 网络处理又一利器
- 杭州佳丽摄影拍摄攻略
- AndBug
- memcpy函数 和 memmove函数 原码
- Android开发之获取所有软件信息
- java项目部署到服务器上,本地可以访问,外网访问不了
- iPhone 6 屏幕揭秘
- 第一个项目——用户管理系统