如何在 Java 中使用佇列實現棧?
堆疊是 Vector 類的一個子類,它表示物件的後進先出 (LIFO) 堆疊。在堆疊頂部新增的最後一個元素 (In) 可能是從堆疊中移除的第一個元素 (Out)。
佇列類擴充套件了集合介面,它支援使用插入和移除操作,採用先進先出 (FIFO)。我們還可以在以下程式中使用佇列實現棧。
示例
import java.util.*;
public class StackFromQueueTest {
Queue queue = new LinkedList();
public void push(int value) {
int queueSize = queue.size();
queue.add(value);
for (int i = 0; i < queueSize; i++) {
queue.add(queue.remove());
}
}
public void pop() {
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);
}
}輸出
[40, 30, 20, 10] An element removed from a stack is: 40 [30, 20, 10]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP