class Solution(object):
def calPoints(self, ops):
"""
:type ops: List[str]
:rtype: int
"""
stack =[]
for op in ops:
if op == 'C':
stack.pop()
elif op == 'D':
stack.append(stack[-1] * 2)
elif op == '+':
stack.append(stack[-1] + stack[-2])
else:
stack.append(int(op))
return sum(stack)
Sol = Solution()
print Sol.calPoints (["5","2","C","D","+"])
0,简单高效
1,用到了类似栈的概念,但是是对列表进行操作的。pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
2,列表中的-1,表示从后往前的计数方式,也就是list[-1]表示取最后一个元素