码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode Evaluate Reverse Polish Notation

时间:2014-09-28 00:52:20      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   os   ar   for   sp   div   

#include <iostream>
#include <cstdlib>
#include <string>
#include <algorithm>
#include <vector>
#include <stack>
#include <queue>
using namespace std;

int evalRPN(vector<string> &tokens) {
    stack<int> value;
    int i = 0;
    for(i = 0; i < tokens.size(); i++){
        if(tokens[i] == "+" || tokens[i] == "-" || tokens[i] == "*" || tokens[i] == "/"){
            string t = tokens[i];
            int a = value.top();
            value.pop();
            int b = value.top();
            value.pop();
            if(t == "+"){
                value.push(b + a);
            }
            if(t == "-"){
                value.push(b - a);
            }
            if(t == "*"){
                value.push(b * a);
            }
            if(t == "/"){
                value.push(b / a);
            }
        }else{
            value.push(atoi(tokens[i].c_str()));
        }
    }
    return value.top();
        
}



int main(int argc, char** argv) {
    vector<string> s;
    s.push_back("4");
    s.push_back("13");
    s.push_back("5");
    s.push_back("/");
    s.push_back("+");
    cout<<evalRPN(s);
    return 0;
}

leetcode Evaluate Reverse Polish Notation

标签:style   blog   color   io   os   ar   for   sp   div   

原文地址:http://www.cnblogs.com/jilichuan/p/3997472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!