题解 | #牛的表达式计算器#
牛的表达式计算器
https://www.nowcoder.com/practice/261e7f01438f414c92f59c0059d3a906
知识点:栈应用
思路,入门题,不多说,常规入栈计算即可,人人都会
编程语言:java
如果我的思路启发了你,给个小小关注吧~
我是废江,一个从java跑到内核再准备润回java的打工人,我会持续分享从linux内核到上层java微服务等干货
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param tokens string字符串一维数组
* @return int整型
*/
public int calculatePostfix (String[] tokens) {
// write code here
Deque<Integer> stack = new ArrayDeque<>();
for (String token : tokens) {
Integer cur = 0;
if (token.equals("+")) {
cur = stack.pop() + stack.pop();
} else if (token.equals("-")) {
int digit = stack.pop();
cur = stack.pop() - digit;
} else if (token.equals("*")) {
cur = stack.pop() * stack.pop();
} else if (token.equals("/")) {
int digit = stack.pop();
cur = stack.pop() / digit;
} else {
cur = Integer.parseInt(token);
}
stack.push(cur);
}
return stack.peek();
}
}

