150. Evaluate Reverse Polish Notation
来源:互联网 发布:手机比价软件哪个好 编辑:程序博客网 时间:2024/05/22 03:34
实现这个 xxx 运算符在后 数值在前的 表达方式
用栈实现,编译通过 提交提示最后return的一句 为空栈异常。尴尬。。
把== 换成equals() 就不空栈异常了
public int evalRPN(String[] tokens) { Stack<Integer> stack=new Stack<>(); int num1;int num2; for(int i=0;i<tokens.length;i++){ if(!(tokens[i].equals("+")||tokens[i].equals("-")||tokens[i].equals("*")||tokens[i].equals("/"))) stack.push(Integer.parseInt(tokens[i])); else{ num2=stack.pop(); num1=stack.pop(); if(tokens[i]=="+"){ stack.push(num1+num2); } if(tokens[i]=="-"){ stack.push(num1-num2); } if(tokens[i]=="*"){ stack.push(num1*num2); } if(tokens[i]=="/"){ stack.push(num1/num2); } } } return stack.pop(); }
找到discuss代码 稍简单一些
public class Solution { public int evalRPN(String[] tokens) { int a,b;Stack<Integer> S = new Stack<Integer>();for (String s : tokens) {if(s.equals("+")) {S.add(S.pop()+S.pop());}else if(s.equals("/")) {b = S.pop();a = S.pop();S.add(a / b);}else if(s.equals("*")) {S.add(S.pop() * S.pop());}else if(s.equals("-")) {b = S.pop();a = S.pop();S.add(a - b);}else {S.add(Integer.parseInt(s));}}return S.pop();} }
0 0
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- 150. Evaluate Reverse Polish Notation
- HDU1171--01背包
- 使用VIM支持鼠标操作
- 平衡二叉树
- CodeForces 589D
- Android之自定义实现BaseAdapter(普通实现)
- 150. Evaluate Reverse Polish Notation
- Android 6.0 运行时权限如何处理
- cocos编译安卓程序:Unsupported major.minor version 52.0
- 可调节灵敏度的ViewPager
- 5访客统计
- red hat linux 5中文显示乱码,无法输入中文
- 创建一个弧
- webView的使用
- 数字游戏_纪中2032_暴力?