今日励志语句:别总听悲伤的歌,别总想从前的事,别让过去拖住脚,别让未来被辜负。
目录
前言:前面写了一篇 栈的实现,接下来学习一下它的"兄弟"
一、队列的概念:
队列:
也是数据结构的一种,也属于特殊的线性表,是不是有点栈的味儿呢??它只允许一端插入数据,另一端删除数据,两个操作在两端进行,满足先进先出 FIFO(First In First Out )原则;因此它和它的好兄弟栈又恰恰相反,反目成仇了!
入队(Front):
进行插入操作的一端(队尾)
出队(Rear):
进行删除操作的一端(队头)
空队列:
不含任何数据
一个图就记住了!!!有点像水管,入管道的水,会先流出管道
流完了,数据也就都出去了
走安全出口,是不是先进去的先下去,后面的跟着在走,陆续出去
队列的两种写法:
①顺序队列:在顺序表的基础上实现的队列结构。
分配一块连续的存储单元存放队列中的元素,并附设两个指针:头指针 front指向队头元素,尾指针 rear 指向队尾元素的下一个位置(思考方向和栈类似,但是又有所不同)
②链队列:在链表的基础上实现的队列结构。
分配一块逻辑上连续的存储单元存放列中的元素,并设2个指针:头指针指向队头的节点,尾指针指向队尾的节点(今天来实现它)
两者的区别是在链表和顺序表的区别,在