数据结构(链表介绍)

链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态,换句话说,使用链表存储的数据元素,其物理存储位置是随机的。


Snip20190130_11.png

根据图中可以看出,根本无法发现各数据之间的逻辑关系,对此,链表为每个元素在存储时配备一个指针,用于指向自己的直接关系的元素.

节点

所以链表中一个数据的存储也被成为 一个节点,每个节点都由以下两个部分组成:
1.数据元素本身,所在区域成为数据域
2.指向元素的指针,所在区域成为指针域


Snip20190130_12.png

所有说链表中存储的也是一个一个的节点,真正的数据元素包含在这些节点中


Snip20190130_13.png

Snip20190130_14.png

头节点,头指针和首元节点

一个完成的链表主要由以下几个部分组成:
1.头指针:一个普通的指针,它的特点是永远指向链表第一个节点的位置。很明显,头指针用于指明链表的位置,便于后期找到链表并使用表中的数据;
2.节点:链表中的节点又细分为头节点、首元节点和其他节点:
头节点:其实就是一个不存任何数据的空节点,通常作为链表的第一个节 点。对于链表来说,头节点不是必须的,它的作用只是为了方便解决某些实际问题;
首元节点:由于头节点(也就是空节点)的缘故,链表中称第一个存有数据的节点为首元节点。首元节点只是对链表中第一个存有数据节点的一个称谓,没有实际意义;
其他节点:链表中其他的节点;

例如存储{1,2,3}的完整链表结构图:


Snip20190130_15.png

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