【数据结构】队列 (Queue)

                                           

今日励志语句:别总听悲伤的歌,别总想从前的事,别让过去拖住脚,别让未来被辜负。

目录

 一、队列的概念:

队列:

入队(Front):

出队(Rear):

空队列:

 队列的两种写法:

二、设计队列和初始化队列:

设计:

 初始化:

三、尾插:

四、 头删:

五、取头和取尾以及返回数据个数:

 六、判空:

七、销毁:

 八、分装代码实现:

Queue.h头文件

Queue.c源文件

tast.c源文件 

九、循环队列:


前言:前面写了一篇 栈的实现,接下来学习一下它的"兄弟"

 一、队列的概念:

队列:

        也是数据结构的一种,也属于特殊的线性表,是不是有点栈的味儿呢??它只允许一端插入数据,另一端删除数据,两个操作在两端进行,满足先进先出  FIFO(First In First Out )原则;因此它和它的好兄弟栈又恰恰相反,反目成仇了!

入队(Front):

                      进行插入操作的一端(队尾)

出队(Rear):

                        进行删除操作的一端(队头)

空队列:

                        不含任何数据

一个图就记住了!!!有点像水管,入管道的水,会先流出管道

流完了,数据也就都出去了

走安全出口,是不是先进去的先下去,后面的跟着在走,陆续出去

 队列的两种写法:

顺序队列:在顺序表的基础上实现的队列结构。

        分配一块连续的存储单元存放队列中的元素,并附设两个指针:头指针 front指向队头元素,尾指针 rear 指向队尾元素的下一个位置(思考方向和栈类似,但是又有所不同)

链队列:在链表的基础上实现的队列结构。

          分配一块逻辑上连续的存储单元存放列中的元素,并设2个指针:头指针指向队头的节点,尾指针指向队尾的节点(今天来实现它)

 两者的区别是在链表顺序表的区别,在

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值