算法实现:
import java.util.*; public class Solution { public int evalRPN(String[] tokens) { // if(tokens.size()==1) return tokens[0]; Stack<Integer> stk = new Stack<Integer>(); for(String token : tokens){ switch(token){ case"+": stk.push(stk.pop() + stk.pop()); break; case"-": stk.push(-stk.pop() + stk.pop()); break; case"/": int num1 = stk.pop(); int num2 = stk.pop(); stk.push(num2 / num1); break; case"*": stk.push(stk.pop() * stk.pop()); break; default: stk.push(Integer.parseInt(token)); } } return stk.pop(); } } 时间复杂度:o(n);空间复杂度为:o(n);