链表的头节点理解

  1. 不管带不带头节点,头指针始终指向第一个结点,头指针始终指向第一个结点,而头节点是带头结点的链表的第一个结点,结点内通常不存储信息。
    图示如下:
    链表的头节点理解_第1张图片

2.在建立链表时,如果是不带头节点,第一个结点需要单独处理即

//尾插法:
head=s;
p=s;

头指针即为指向第一个结点的指针。

3.如果是带头节点的链表,头节点需要单独分配空间,但是并不存储数据,只需要将其余结点链到其后即可。如下:

//头插法
head=(LinkList)malloc(sizeof(LNode));
s->next=head->next;
head->next=s;

所以综上,无论是否带头结点,头指针始终指向第一个结点。可以从创建链表时head的指向理解。

你可能感兴趣的:(数据结构,链表,数据结构)