A Ngăn xếp là một lớp con của Vectơ đẳng cấp và nó đại diện cho l ast-in-first-out (LIFO) chồng các đối tượng. Phần tử cuối cùng được thêm ở đầu ngăn xếp (Vào) có thể là phần tử đầu tiên bị xóa (Ra) khỏi ngăn xếp.
A Hàng đợi mở rộng lớp Bộ sưu tập và nó hỗ trợ insert và loại bỏ các thao tác sử dụng nhập trước - xuất trước (FIFO) . Chúng tôi cũng có thể triển khai Ngăn xếp bằng cách sử dụng Hàng đợi trong chương trình bên dưới.
Ví dụ
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); } }
Đầu ra
[40, 30, 20, 10] An element removed from a stack is: 40 [30, 20, 10]