头结点、首元结点、头指针区别为:性质不同、目的不同、存在情况不同。
一、性质不同
1、头结点:头结点是在链表的首元结点之前附设的一个结点。
2、首元结点:首元结点是指链表中存储线性表中第一个数据元素a1的结点。
3、头指针:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针。
二、目的不同
1、头结点:头结点为了方便操作链表而附设的。
2、首元结点:首元结点作为链表的开始结点。
3、头指针:头指针为了指向链表的基地址。
三、存在情况不同
1、头结点:头结点对于单链表来说,头结点可有可无,但为了操作方便,一般情况下单链表都具有头结点。
2、首元结点:首元结点如果单链表有头结点,则首元结点为头结点的下一个结点,如果单链表没有头结点,则首元结点就是单链表的第一个结点。
3、头指针:头指针如果单链表有头结点,则头指针指向头结点,如果单链表没有头结点,则头指针指向第一个首元结点。