定义
在生活中,队列的例子非常多,买票回家过年,凭票排队看电影等。队列的基本模型如下所示:
两种形式:
顺序队列
在上图中,存在两种访问形式:
(1) 当队列中无元素时,对头和队尾均指向对头,当新增一个元素时,队尾往后移动一个位置。当减少一个元素时,对头后移一个位置。最后有可能对头和队尾均指向队尾,这种现象被称为“假溢出”。
(2) 或者减少元素时,对头不动,插入元素时,一个一个向前移动。但是这样的移动导致效率大大下降。
循环队列
实现
存储方式:顺序存储和链式存储
访问形式:顺序队列和循环队列
队列中存储的元素:基本类型和自定义类型
基于上述分析,我们分别实现顺序存储的循环队列(基本类型和自定义类型)和链式存储的循环队列(基本类型和自定义类型)。