package problem;import java.util.Stack;public class EnglishFluent {public int simple (String s) {if (s.charAt(0) == '-') {s = '0' + s;}int num = 0;Stack<Integer> digitStack = new Stack<>();Stack<Character> opStack = new Stack<>();char[] c = s.toCharArray();for (int i = 0; i < c.length; i++) {if (Character.isDigit(c[i])) {num = num * 10 + c[i] - '0';} else {digitStack.push(num);num = 0;opStack.push(c[i]);}}digitStack.push(num);while (!opStack.isEmpty()) {int a = digitStack.pop();int b = digitStack.pop();char op = opStack.pop();if (opStack.isEmpty()) {if (op == '+') return a + b;else return b - a;} else if (opStack.peek() == '-') {if (op == '+') digitStack.push(b - a);else digitStack.push(b + a);} else {if (op == '+') digitStack.push(b + a);else digitStack.push(b - a);}}return 0;}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。