文章目录
前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、队列
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
二、环形数组实现队列
环形数组实现队列时,取模思想非常重要,在实现环形数组时基本靠取模来实现数组成环
代码如下(示例):
/**
* @Author sen
* @Date 2021/9/7
*/
public class arrayQueue {
private int maxSize; // 最大长度
private int head; // 头结点索引,头结点从0开始
private int tail; // 尾节点索引,尾结点从0开始,同时我们约定tail永远指向最后一个结点的下一个元素
private int[] arr; // 数组
// 初始化
public arrayQueue(int maxSize) {
this.maxSize = maxSize;
this.arr = new int[maxSize];