链表中头结点与头指针的概念

来源:互联网 发布:阿里云域名解析记录值 编辑:程序博客网 时间:2024/04/27 13:30
关于头指针:
1.在线性表的链式存储结构中,头指针是指链表中指向第一个结点的指针,若链表有头结点,则头指针就是指向链表头结点的指针。

2.头指针具有标识作用,因此经常使用链表的名字作为头指针名

3.无论链表是否为空,头指针均不为空。头指针是链表的必要元素。

关于头结点:
1.头结点是放在第一个元素结点之前的结点,头结点不是链表中的必须元素,其数据域一般无意义,(有些情况下会存放链表的长度,或用作监视哨等)

2.有了头结点后,对在第一个元素结点前插入结点和删除第一个结点,这些操作与对其他结点的操作就相同了。

以下是对链表中进行插入时的操作:

void inputLlist(Linklist *lst,int n,int* arr)
{

for(int i=n-1;i>=0;i--)
{
     LNode *p=(LNode*)malloc(sizeof(LNode));
      p->data=arr[i];
      p->next=(*lst)->next;                       //p->next=*lst;
 (*lst)->next=p; //保留原头结点    //*lst=p;红色部分表示插入时不断改变头结点,头指针
}
}

0 0
原创粉丝点击