逆波兰表达式求值(Evaluate Reverse Polish Notation)
2015-08-01 15:28
190 查看
问题描述:
逆波兰表达式求值,经典问题。
思路:
遇到数字入栈,遇到符号取栈顶的两个元素出来,再将结果入栈,最后栈里剩下的元素就是结果了。
实现代码:
逆波兰表达式求值,经典问题。
思路:
遇到数字入栈,遇到符号取栈顶的两个元素出来,再将结果入栈,最后栈里剩下的元素就是结果了。
实现代码:
class Solution { public: int evalRPN(vector<string>& tokens) { stack<int> st; for(auto &s:tokens){ if(s.length()>1 || isdigit(s[0])) st.push(stoi(s)); else{ int num1=st.top(); st.pop(); int num2=st.top(); st.pop(); if(s[0]=='+') num2+=num1; if(s[0]=='-') num2-=num1; if(s[0]=='*') num2*=num1; if(s[0]=='/') num2/=num1; st.push(num2); } } return st.top(); } };
相关文章推荐
- 【Lua】loadfile、dofile、require详解
- 【转】Lua编程规范
- Lua基础
- Lua基础
- LUA中table和字符串相互转换
- Lua处理游戏数据
- LUA脚本调用C场景,使用C API访问脚本构造的表
- lua math lib
- 【LintCode】Evaluate Reverse Polish Notation 逆波兰表达式求值
- Lua 学习备忘录3
- tengine安装lua
- Lua 学习备忘录2
- Lua脚本语言入门
- lua 的table排序
- CSLight研究院之和uLua的效率对比第一弹
- scikit-learn:3.5. Validation curves: plotting scores to evaluate models
- lua 文件读写
- 【转】Lua脚本语法说明简介
- lua os.date()参数
- Install and Evaluation of Yahoo's Kafka Manager