题目:
解析:
- 使用栈来存储运算数,使用python中的eval表达式来计算,注意除法的小数转换为整数。
代码:
class Solution:
def evalRPN(self, tokens: List[str]) -> int:
operator = set(['*', '/', '+', '-'])
sta = []
for i in tokens:
if i not in operator:
sta.append(i)
else:
temp2 = sta.pop()
temp1 = sta.pop()
if i == '/':
sta.append(str(int(eval(temp1 + i + temp2))))
else:
sta.append(str(eval(temp1 + i + temp2)))
return sta[0]