# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 给定一个后缀表达式,返回它的结果 # @param str string字符串 # @return long长整型 # class Solution: def legalExp(self , str1 ): # write code here stack=[] number=[] i=0 while(len(str1)!=i): #如果是数字,确定完数字整体 if str1[i] in [str(i) for i in range(0,10)]: while(str1[i]!='#'): number.append(str1[i]) i+=1 stack.append(int(''.join(number))) number=[] i+=1 #如果不是数字,算结果 else: length=len(stack) if str1[i]=='+': stack[length-2]=stack[length-1]+stack[length-2] elif str1[i]=='-': stack[length-2]=stack[length-2]-stack[length-1] elif str1[i]=='*': stack[length-2]=stack[length-1]*stack[length-2] stack.pop() i+=1 return stack[0]