我的问题是关于“ postfix ”符号。在我的项目中,讲师希望我能够计算后缀符号。编程风格是免费的,但编程语言是Java。我将用Java编写代码,但我不熟悉抽象数据类型,如堆栈,队列。有没有办法计算没有堆栈,双链表和队列的后缀表示法?
答案 0 :(得分:0)
这是如何使用堆栈:
@SuppressWarnings({"rawtypes", "unchecked"})
public static void main(String[] args) {
final String in = "5 9 + 2 * 6 5 * +";
final Deque<Object> s = new LinkedList();
for (String t : in.split(" ")) {
if (t.equals("+")) s.push((Integer)s.pop() + (Integer)s.pop());
else if (t.equals("*")) s.push((Integer)s.pop() * (Integer)s.pop());
else s.push(Integer.parseInt(t));
}
System.out.println(s.pop());
}