顺序队列及其(C语言)实现详解

顺序队列,即采用顺序表模拟实现的队列结构。

我们知道,队列具有以下两个特点:

  1. 数据从队列的一端进,另一端出;
  2. 数据的入队和出队遵循"先进先出"的原则;

因此,只要使用顺序表按以上两个要求操作数据,即可实现顺序队列。首先来学习一种最简单的实现方法。

顺序队列简单实现

由于顺序队列的底层使用的是数组,因此需预先申请一块足够大的内存空间初始化顺序队列。除此之外,为了满足顺序队列中数据从队尾进,队头出且先进先出的要求,我们还需要定义两个指针(top 和 rear)分别用于指向顺序队列中的队头元素和队尾元素,如 1 所示:

顺序队列及其(C语言)实现详解_第1张图片

                                                            图 1 顺序队列实现示意图


由于顺序队列初始状态没有存储任何元素,因此 top 指针和 rear 指针重合,且由于顺序队列底层实现靠的是数组,因此 top 和 rear 实际上是两个变量,它的值分别是队头元素和队尾元素所在数组位置的下标。

在图 1 的

你可能感兴趣的:(数据结构,数据结构与算法教程,数据结构C语言版教程!)