带头结点的单链表
用链表存储数据,其特点是数据在存储空间中的顺序是离散的。对于链表中的每个数据来说,为了表示数据a(i)和其直接后继a(i+1)之间的联系,对于数据a(i),除了存储其值外,还要存储一个指示其直接后继的信息,及指向下一个元素的指针。因此a(i)由存储数据的数据域和存储指针的指针域组成。
在链表中,数据的存储必须从头指针开始,头指针指示链表中的第一个元素;同时,由于最后一个元素没有直接后继,则单链表中最后一个元素的指针域置空(NULL).。
为了方便操作,在单链表的第一个结点之前附设一个结点,称为头结点。头结点的数据域可以不存储任何信息,也可以存储诸如链表长度等信息,头结点的指针域存储指向第一个结点的指针。