Java 中队列是一个重要的数据结构,常用于处理先进先出(FIFO)的数据流。以下是几种常见的 Java 队列实现:
- 数组队列:使用数组实现,适用于队列大小固定或较小的情况。
- 链表队列:使用链表实现,适用于队列大小不确定或较大的情况。
- 循环队列:在数组队列的基础上,通过循环利用数组空间,提高空间利用率。
以下是一个简单的数组队列实现示例:
public class ArrayQueue {
private int[] elements;
private int size;
private int front;
private int rear;
public ArrayQueue(int capacity) {
elements = new int[capacity];
size = 0;
front = 0;
rear = -1;
}
public boolean isEmpty() {
return size == 0;
}
public boolean isFull() {
return size == elements.length;
}
public void enqueue(int element) {
if (isFull()) {
throw new IllegalStateException("Queue is full");
}
rear = (rear + 1) % elements.length;
elements[rear] = element;
size++;
}
public int dequeue() {
if (isEmpty()) {
throw new IllegalStateException("Queue is empty");
}
int element = elements[front];
front = (front + 1) % elements.length;
size--;
return element;
}
public int peek() {
if (isEmpty()) {
throw new IllegalStateException("Queue is empty");
}
return elements[front];
}
}
更多关于 Java 队列实现的细节,可以参考本站的 Java 队列实现详解。