目录
1.知识点
2.顺序循环队列
3.链式循环队列
4.一道妙的选择题
----
1.知识点
让我们先对比一下普通队列和循环队列
普通队列的实现,不懂可以戳这里
https://blog.csdn.net.../qq_64428099/article/details/126173181
第一个问题:顺序循环队列和链式循环队里怎么做到循环?...第二个问题:由于循环队列是定长的,定长的话和普通队列不一样,不定长的话,只用考虑为队列空的情况,定长的话,除了考虑为空的情况,还需要考虑队列为满的情况.
至于如何判断队列为空和队列满了?...请往下看
回顾一下我们以前队列判空的逻辑:(指向同一个值为空的数组元素或者节点
顺序普通队列:a[front]==a[tail]
链式普通队列:front==tail
如果我们和之前一样的方式判断满的话...别急,有办法~~
解决判断队列为空和队列满有两种解决方案:
方法一:
在MyCircularQueue结构体中设置一个size成员变量,用于记录实际的元素个数,而定长K是题目会给的,我们也相应的记录为