150 Evaluate Reverse Polish Notation
150 Evaluate Reverse Polish Notation
这道题唯一要注意的是 python 中 eval("3/-5") 会得到-1 而不是0, 因此使用 int(eval("3/-5."))可以得到0, 即在待计算的string后面加一个"."就能解决这个问题
class Solution: # @param {string[]} tokens # @return {integer} def evalRPN(self, tokens): stack = [] for t in tokens: if t in ["+", "-", "*", "/"]: b = stack.pop() a = stack.pop() c = eval(a + t + b + '.') stack.append(str(int(c))) else: stack.append(t) return int(stack[0])