2012-04-19 51 views
-2

我的问题是关于“postfix”的表示法。在我的项目中,教练希望我能够计算后缀符号。编程风格是免费的,但编程语言是Java。我会用Java编写代码,但我不擅长抽象数据类型,例如堆栈,队列。有没有一种方法来计算没有堆栈,双链表和队列的后缀符号?我可以生成Postfix Notation而不使用Double Link List和Stack数据结构

+0

嗨,hakiko。 StackOverflow是一个网站,他们正在写关于他们的代码的具体问题。你正在问一个没有代码的完全一般的问题。所以我会说这是无关紧要的话题。 – 2012-04-19 13:45:53

+0

我认为问题很简单和基本,有没有办法。我会研究你的回答:) – hakiko 2012-04-19 13:48:43

+0

就目前来看,你的问题是不明确的。 “计算后缀符号”是什么意思? – 2012-04-19 13:50:18

回答

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()); 
} 
相关问题