文章来源:数据结构之顺序队列、链式队列、循环队列-c语言实现 | Vesel『无心』'Blog
在上一篇文章里,说了队列的相关内容,其中除了这篇文章说的顺序队列、链式队列和循环队列三个,还提到了阻塞队列和并发队列,这两个因为能力原因,还没能实现,这个坑等以后再来补。
回来说这次实现的三个队列,首先是顺序队列,顺序队列是基于数组来实现的队列,在原数组的实现基础上增加了head和tail两个结构体成员,用来标识队头和队尾。
![7ec27ccb92d8a59283848ca5c563dbcd.png](https://img-blog.csdnimg.cn/img_convert/7ec27ccb92d8a59283848ca5c563dbcd.png)
其他的也没有什么太大的变化了,代码如下
如果需要下载代码的,请移步文末
![ff171bc49aadc23697ddac66cc10d67b.png](https://img-blog.csdnimg.cn/img_convert/ff171bc49aadc23697ddac66cc10d67b.png)
接下来说链式队列,链式队列的实现与之前的实现都有一点区别,因为链表和队列两个都是需要指针的,所以在这里定义两个结构体的时候需要格外的注意一下,在后面的代码实现中也需要着重理解一下其中的含义。
在定义结构体的时候,我使用了typedef struct和struct两种,可以在代码中去感受一下它们的区别所在。