java实现实现如下链队列处理函数。 建队列、初始化队列、判断队列是否非空、求队列的长度、入队、出队、输出队列的元素。
时间: 2024-10-18 12:15:03 浏览: 23
python 队列基本定义与使用方法【初始化、赋值、判断等】
在Java中,我们可以使用数组或者ArrayList来实现一个简单的链式队列,这里提供一个基于数组的实现。首先创建一个Node类作为节点,然后是Queue类:
```java
// 定义节点类 Node
class Node {
int data;
Node next;
Node(int value) {
data = value;
next = null;
}
}
// 队列类 Queue
public class Queue {
private Node front; // 队头
private Node rear; // 队尾
private int size; // 队列长度
public Queue() {
front = rear = null;
size = 0;
}
// 判断队列是否为空
public boolean isEmpty() {
return front == null;
}
// 求队列长度
public int length() {
return size;
}
// 初始化队列
public void enqueue(int value) {
if (size == MAX_SIZE) { // 如果已满,抛异常
throw new RuntimeException("Queue is full");
}
Node newNode = new Node(value);
if (isEmpty()) {
front = rear = newNode;
} else {
rear.next = newNode;
rear = newNode;
}
size++;
}
// 出队
public int dequeue() {
if (isEmpty()) {
throw new RuntimeException("Queue is empty");
}
int removedValue = front.data;
front = front.next;
if (front == null) {
rear = null;
}
size--;
return removedValue;
}
// 输出队列元素
public void printQueue() {
Node current = front;
while (current != null) {
System.out.print(current.data + " ");
current = current.next;
}
System.out.println();
}
}
```
在这个实现中,我们假设有一个常量`MAX_SIZE`限制了队列的最大容量。
阅读全文