150. 逆波兰表达式求值
-
[题目链接](150. 逆波兰表达式求值 - 力扣(LeetCode))
-
解题思路:用一个栈,遇到数字压进去,遇到运算符则计算后压入栈
-
代码
class Solution: def evalRPN(self, tokens: List[str]) -> int: stack = [] ans = 0 for s in tokens: if s == '+': a = stack.pop() b = stack.pop() stack.append(a + b) elif s == '-': a = stack.pop() b = stack.pop() stack.append(b - a) elif s == '*': a = stack.pop() b = stack.pop() stack.append(a * b) elif s == "/": a = stack.pop() b = stack.pop() stack.append(math.trunc(b / a)) else: stack.append(int(s)) return stack.pop()

浙公网安备 33010602011771号