链表
链表是线性表的链式存储方式,逻辑上相邻的数据在计算机内的存储位置不一定相邻,那么怎么表示逻辑上的相邻关系呢?可以给每个元素都附加一个指针域,指向下一个元素的存储位置。
每个节点都包含两个域:数据域和指针域。数据域存储数据元素,指针域存储下一个节点的地址,因此指针指向的类型也是节点类型。链表中的每个指针都指向下一个节点,都朝向一个方向的,这样的链表被称为单向链表或单链表。
不管这个单链表有多长,只要找到它的头,就可以拉起整个单链表,因此如果给这个单链表设置一个头指针,则这个单链表中的每个节点就都可以找到了。
有时为了操作方便,还会给单链表增加一个不存放数据的头节点(也可以存放表长等信息)。给单链表加上头节点,就像给铁链子加上钥匙扣。