150. Evaluate Reverse Polish Notation
2017-07-12 10:54
393 查看
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
二刷时自己做出来的,应该注意
stoi() string to int 就不需要像atoi那样 还需要s.c_str()
stol()是转成long型的。
比较方便
还有对称的to_string();
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
class Solution { public: int evalRPN(vector<string>& tokens) { if(tokens.empty()) return 0; stack<int> st; for(string s:tokens){ if(s=="+"){ int first=st.top(); st.pop(); int second=st.top(); st.pop(); st.push(second+first); } else if(s=="-"){ int first=st.top(); st.pop(); int second=st.top(); st.pop(); st.push(second-first); } else if(s=="*"){ int first=st.top(); st.pop(); int second=st.top(); st.pop(); st.push(second*first); } else if(s=="/"){ int first=st.top(); st.pop(); int second=st.top(); st.pop(); st.push(second/first); } else{ int num=stoi(s); st.push(num); } } return st.top(); } };
二刷时自己做出来的,应该注意
stoi() string to int 就不需要像atoi那样 还需要s.c_str()
stol()是转成long型的。
比较方便
还有对称的to_string();
相关文章推荐
- Algorithms—150.Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- leetcode 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 【leetcode】150. Evaluate Reverse Polish Notation
- 150.Evaluate Reverse Polish Notation(Stack-Medium)
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 【LeetCode】150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- [LeetCode] 150. Evaluate Reverse Polish Notation
- LeetCode——150. Evaluate Reverse Polish Notation
- Leetcode 150. Evaluate Reverse Polish Notation
- LeetCode 150. Evaluate Reverse Polish Notation
- Leetcode刷题记——150. Evaluate Reverse Polish Notation(计算逆波兰表达式)
- 【LeetCode】150. Evaluate Reverse Polish Notation
- Leetcode 150. Evaluate Reverse Polish Notation