码迷,mamicode.com
首页 > 其他好文 > 详细

链式队列基本操作的实现问题

时间:2019-01-25 23:53:51      阅读:361      评论:0      收藏:0      [点我收藏+]

标签:元素   代码   链式存储   nbsp   font   info   alt   改变   front   

问题描述:用链式存储方式实现队列的基本操作

涉及变量:front:Node型自定义变量,指向队首元素

                   rear:Node型自定义变量,指向队尾元素

涉及教材:《数据结构——Java语言描述(第2版)》 清华大学出版社

大致思路:

链式存储结构不害怕出队列会浪费空间,因此也不需要要循环结构来节约空间

front为指向队首结点的指针

rear为指向队尾结点的指针

初始化时它们均指向空

初始化代码如下:

技术分享图片

队列的置空方法与初始化相类似

而判断队列是否为空只需要判断队首指针是否指向非空元素即可

代码如下:

技术分享图片

求长度与陈列元素方法有异曲同工之妙

同样是挨个判断元素是否为空后再进行选择

在求长度方法中,若不为空,则长度变量自增加1

在陈列元素中,若不为空,则输出元素

代码如下:

技术分享图片

技术分享图片

入队列,在队列为空时,将队首指针和队尾指针同时指向插入的元素

若不为空,则改变原队尾元素的指向和队尾指针的指向

技术分享图片

出队列:在队首指针不指向空时,开始出队列操作,移动队首指针

若出队列的是队尾元素,则出队列后队列为空,将队尾指针指向空

技术分享图片

取队首元素:只需要返回队首元素的数据域即可

技术分享图片

以上是我对链式队列的基本操作的实现问题的一些看法,希望对各位有所帮助

190125 Rewivy

链式队列基本操作的实现问题

标签:元素   代码   链式存储   nbsp   font   info   alt   改变   front   

原文地址:https://www.cnblogs.com/rewivy/p/10322279.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!