4、队列
4.1循环队列 用数组实现
①静态队列为什么必须是循环队列
减少对内存的浪费
②循环队列需要几个参数来确定
需要两个参数front和rear来确定
③循环队列各个参数的含义
- 1)队列初始化 (front和rear的值都是零)
- 2)队列非空 (front 代表的是队列的第一元素,rear代表的是队列的最后一 个有效元素的下一个元素)
- 3)队列空 front和rear的值相等,但不一定是零
④循环队列入队伪算法讲解 R加
入队需要两步完成:
1. 将数值存入r所代表的位置:
2. 错误的写法r=r+1;
正确的写法是:r=(r+1)%数组的长度
⑤循环队列出队伪算法讲解 F加
出队时:f=(f+1)%数组的长度
⑥如何判断循环是否为空
如果front与rear的值相等,则该队列为空
⑦如何判断队列是否已满
两种方式:
1.多增加一个表标识参数
2.少用一个元素(通常使用):如果r和f的值紧挨着,则队列已满
if((r+1)%数组长度==f)
已满
else
不满
4.2循环队列的程序 演示
#include<stdio.h&