wap网站cms,木卢seo教程,网站建设学习教程,虚拟机主机网站建设的几个步骤文章目录 题目方法一:栈 题目 方法一:栈 class Solution {public int evalRPN(String[] tokens) {Deque<Integer> deque new LinkedList<>();String rpn "-*/";//符号集 用来判断扫描的是否为运算符int sum 0;for(int i 0 ; i…
文章目录
题目
方法一:栈
题目
方法一:栈
classSolution{publicintevalRPN(String[] tokens){Deque<Integer> deque=newLinkedList<>();String rpn ="+-*/";//符号集 用来判断扫描的是否为运算符int sum =0;for(int i =0; i < tokens.length ; i++){if(!rpn.contains(tokens[i])) deque.push(Integer.valueOf(tokens[i]));// 如果当前字符不为运算符 则直接入栈 else{// 如果当前字符为运算符 则将栈顶两个元素弹出 根据 后出 +-*/ 先出 的规则运算,再将结果压入栈中sum =eval(tokens[i],deque);deque.push(sum);}}return deque.peek();//最后遍历完字符数组 最后栈中的唯一元素就是最终结果}//匹配运算publicinteval(String s ,Deque<Integer> deque){int first = deque.pop();int second = deque.pop();if(s.equals("+")){return second + first;}elseif(s.equals("-")){return second - first;}elseif(s.equals("*")){return second * first;}else{return second / first;}}}