3.2.2 队列的顺序存储结构及其基本运算的实现 假设队列的元素个数最大不超过整数MaxSize,所有的元素都具有同一数据类型ElemType,则顺序队列类型SqQueue定义如下: typedef struct { ElemType data[MaxSize]; int front,rear;/*队首和队尾指针*/ } SqQueue 从前图中看到,图(a)为队列的初始状态,有front==rear成立,该条件可以作为队列空的条件。 那么能不能用rear==MaxSize-1作为队满的条件呢?显然不能,在图(d)中,队列为空,但仍满足该条件。这时入队时出现“上溢出”,这种溢出并不是真正的溢出,在elem数组中存在可以存放元素的空位置,所以这是一种假溢出。 为了能够充分地使用数组中的存储空间,把数组的前端和后端连接起来,形成一个环形的顺序表,即把存储队列元素的表从逻辑上看成一个环,称为循环队列。 循环队列首尾相连,当队首front指针满足 front=MaxSize-1后,再前进一个位置就自动到0,这可以利用除法取余的运算(%)来实现: 队首指针进1:front=(front+1)%MaxSize 队尾指针进1:rear=(rear+1)%M
您可能关注的文档
最近下载
- 深度解析(2026)《GBT 3105-2002普通螺栓和螺钉 头下圆角半径》(2026年)深度解析.pptx VIP
- 2026新人教版八年级数学下学期期中综合质量评估试卷及答题卡.docx
- 《落叶清扫机设计》毕业学术论文.doc VIP
- 梅州市梅江区2025-2026学年第二学期三年级语文期中考试卷(部编版含答案).docx VIP
- 实施指南(2025)《GBT3105-2002普通螺栓和螺钉头下圆角半径》.pptx VIP
- 结核预防性治疗方案.pdf VIP
- 文始初学实践.pdf VIP
- 2026届重庆市巴蜀中学高三下学期二模考试政治试卷(文字版,含答案).docx
- 2026上海新高考物理核心考点密押试卷(附答案解析).docx VIP
- 数字文化产业商业模式创新与消费者行为分析报告.docx
原创力文档

文档评论(0)