一個堆疊(Stack)是Vector類別的子類,它代表了一個後進先出(LIFO)的物件堆疊。最後一個加入到堆疊頂部的元素(In)可以是從堆疊中首先移除的元素(Out)。
佇列(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中文網其他相關文章!