- 单链表的链式存储结构
所谓链式存储结构,相较于顺序存储结构的顺序表,顾名思义其存储方式不再是物理地址开辟一块连续空间存储所有结点的方式,见图1,而是通过指针将结点连接起来的存储方式。因此,单链表的每一个结点在物理空间可以不相邻,而在逻辑空间上连续存在;且每个结点除了存储了本身的数据Data,而且有且仅有一个指针Pointer指向下一个结点的位置(地址),是单向存储。
图1所示是典型的单链表结构,这里Head是头结点,头结点用来标记单链表的开始,其数据为NULL,指针指向单链表第一个结点,头结点的存在让单链表的操作更加方便。单链表最后一个结点的指针一般指向NULL,如果让其指向开头,则这个链表就成了循环单链表。
- 链式存储的优缺点
因为引入了指针索引的特点,链式结构的线性表的插入和删除特定结点的过程比顺序存储的单链表方便很多,无需移动大量元素,而是通过更改指针指向即可实现。但是与此同时,链式存储线性表查找定位特定元素则需要遍历整个链表直至寻找到所需元素,而顺序表