当前位置:   article > 正文

【c++】模拟实现循环队列 三种方法(标识、浪费一个空间、计数器)_顺序循环队列计算器方法c++

顺序循环队列计算器方法c++

什么是循环队列?

为充分利用向量空间,克服”假溢出“现象的方法:将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列(Circular Queue)。

假象成如图:


但实际上存储空间还是一段连续的空间。

空队列:


当有元素入队时:


元素出队:


元素继续入队时:


在这里吃瓜群众们可能有个疑问,队尾标记rear 是怎么就突然蹦到front的前面的?

观察我们可以发现当E入队时,rear = 5,

下一个将要入队的是F,那么按照假象的循环队列的话 rear应该变为0 ,也就是(rear+1)%容量,可以多计算几个值尝试,画图尝试一下,容易理解。

然后G入队时 rear+1 即可 。用一个对容量求余的方法,解决了 rear每次 向后推进的 改变。当然也可以判断入队时rear 是否等于容量 ,

当等于容量时࿰

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号