ホームページ  >  記事  >  Java  >  Javaでキューを使用してスタックを実装するにはどうすればよいですか?

Javaでキューを使用してスタックを実装するにはどうすればよいですか?

王林
王林転載
2023-08-25 17:05:111394ブラウズ

Javaでキューを使用してスタックを実装するにはどうすればよいですか?

A Stack (Stack) は、後入れ先出し (LIFO) オブジェクト スタックを表す Vector クラスのサブクラスです。スタックの先頭に追加された最後の要素 (In) が、スタックから削除される最初の要素 (Out) になる場合があります。

Queue(Queue) クラスは Collection インターフェイスを拡張し、先入れ先出し (FIFO) を使用した挿入および削除操作をサポートします。次のプログラムではキューを使用してスタックを実装することもできます。

import java.util.*;
public class StackFromQueueTest {
   Queue queue = new LinkedList();
<strong>   public void push(int value) {
</strong>      int queueSize = queue.size();
      queue.add(value);
      for (int i = 0; i < queueSize; i++) {
         queue.add(queue.remove());
      }
   }
<strong>   public void pop() {
</strong>      System.out.println("An element removed from a stack is: " + queue.remove());
   }
   public static void main(String[] args) {
      StackFromQueueTest test = new StackFromQueueTest();
      test.push(10);
      test.push(20);
      test.push(30);
      test.push(40);
      System.out.println(test.queue);
      test.pop();
      System.out.println(test.queue);
   }
}

出力

<strong>[40, 30, 20, 10]
</strong>An element removed from a stack is: 40
<strong>[30, 20, 10]</strong>

以上がJavaでキューを使用してスタックを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。