class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param tokens string字符串vector * @return int整型 */ int evalRPN(vector<string>& tokens) { // write code here stack<int>st; int a, b; for(int i=0; i < tokens.size(); i++) { if(tokens[i] != "+" && tokens[i] != "-" && tokens[i] != "*" && tokens[i] != "/") { st.push(stoi(tokens[i])); } else { a = st.top(); st.pop(); b = st.top(); st.pop(); } //栈是后进先出应该注意ab顺序 if(tokens[i]=="+") st.push(a+b); if(tokens[i]=="-") st.push(b-a); if(tokens[i]=="*") st.push(a*b); if(tokens[i]=="/") st.push(b/a); } return st.top(); } };