描述以下三个概念的区别:头指针、头结点、首结点,并说明在单链表中设置头结点的作用是什么?

 我来答
床前明月儿
高能答主

2020-04-25 · 探索生活中的另一种可能
床前明月儿
采纳数:101 获赞数:171945

向TA提问 私信TA
展开全部

首节点就是指的头结点,在单链表中设置头结点作用是为了防止单链表是空的。跟头指针区别如下:

一、主体不同

1、头指针:以确定线性表中第一个元素对应的存储位置。

2、头结点:数据结构中,在单链表的第一个结点之前附设一个结点,没有直接前驱。

二、特点不同

1、头指针:整个链表的存取就必须是从头指针开始进行了。之后的每一个结点,其实就是上一个的后继指针指向的位置。

2、头结点:数据域可以不存储任何信息,头结点的指针域存储指向第一个结点的指针。


三、作用不同

1、头指针:用于处理数组、链表、队列等数据结构。

2、头结点:作用是使所有链表(包括空表)的头指针非空,并使对单链表的插入、删除操作不需要区分是否为空表或是否在第一个位置进行,从而与其他位置的插入、删除操作一致。


参考资料来源:百度百科-头指针

参考资料来源:百度百科-头结点

张博豪我爱你68
推荐于2017-11-26 · TA获得超过134个赞
知道答主
回答量:112
采纳率:0%
帮助的人:124万
展开全部
首元结点是指链表中存储线性表中第一个数据元素a1的结点。为了操作方便,通常在链表的首元结点之前附设一个结点,称为头结点,该结点的数据域中不存储线性表的数据元素,其作用是为了对链表进行操作时,可以对空表、非空表的情况以及对首元结点进行统一处理。头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针。若链表中附设头结点,则不管线性表是否为空表,头指针均不为空。否则表示空表的链表的头指针为空。这三个概念对单链表、双向链表和循环链表均适用。是否设置头结点,是不同的存储结构表示同一逻辑结构的问题。 头结点headàdatalink头指针 首元结点简而言之, 头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针; 头结点是在链表的首元结点之前附设的一个结点;数据域内只放空表标志和表长等信息(内放头指针?那还得另配一个头指针!) 首元素结点是指链表中存储线性表中第一个数据元素a1的结点。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式