2.6 数据结构 --1.2 队列

2020-03-09  本文已影响0人  寒暄_HX

数据结构子目录https://www.jianshu.com/p/a344fa483655

队列

什么是队列

队列是一个数据结合,仅允许在一端进行插入,另一端进行删除。


队列

队列的特点

先进先出

队列的概念

队尾
队头

队列的操作

进队
出队

队列的理想实现

队列的理想实现是列表,但是这里有一个最大的问题便是,出队操作之后前指针后移造成了出队元素的空间浪费,如果放着不管的话,这么大的空间浪费让人心疼。
但是如果进行修改,让元素出队后后面的元素移动索引向前的话,那么要队列和没要队列区别也不大。

队列的实际实现

终于人们设计出了环形队列,让整个队列没有了绝对的首尾。


环形队列

这样的队列就可以避免大规模的空间浪费。

实现原理:
尾指针front = maxsize+1时,再前进一个位置就自动变0.
1.队首指针前进:fornt = (fornt+1) % maxsize
2.队尾指针前进:rear = (rear+1) % maxsize
3.队空条件:rear == fornt
4.队满条件:(rear + 1)%maxsize == fornt

上一篇下一篇

猜你喜欢

热点阅读