3-8-循环队列-栈和队列-第3章-《数据结构》课本源码-严蔚敏吴伟民版
课本源码部分
第3章 栈和队列 - 循环队列
——《数据结构》-严蔚敏.吴伟民版
源码使用说明 链接☛☛☛ 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明
课本源码合辑 链接☛☛☛ 《数据结构》课本源码合辑
习题集全解析 链接☛☛☛ 《数据结构题集》习题解析合辑
本源码引入的文件 链接☛ Status.h
文档中源码及测试数据存放目录:数据结构\▲课本算法实现\▲03 栈和队列\08 CylSeqQueue
概述
循环队列是队列的一种变体,它仍然遵循队列“先进先出,后进后出”的特性。
解析
当队列用顺序存储结构时,容易造成空间浪费,用链式存储结构时,操作会显得不便(涉及到空间的申请、释放)。所以,在队列所需容量可以预估的前提下,一种折衷的存储方案是用数组作为存储结构,但逻辑上采用循环队列这种变体。
循环队列的难点在于对队列空、队列满、队列长度的判断上,结合图例会更容易理解。
循环队列存储方式如下图(用数组存放其元素):
源码
文件一 ☛ CylSeqQueue.h
文件二 ☛ CylSeqQueue.c
文件三 ☛ CylSeqQueue-main.c (测试文档)
测试结果展示