私の質問は「接尾辞」表記についてです。私のプロジェクトでは、インストラクターは私から後置記法を計算することを望んでいました。プログラミングスタイルは無料ですが、プログラミング言語はJavaです。Javaでコードを記述しますが、スタック、キューなどの抽象データ型は得意ではありません。スタック、二重リンクリスト、キューなしで後置記法を計算する方法はありますか?
質問する
593 次
1 に答える
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());
}
于 2012-04-20T08:27:23.937 に答える