前边我们创建了顺序存储结构的线性表,简称顺序表,顺序表最大的问题是:插入和删除需要移动大量的元素。为了解决 这个问题, 我们引入链式存储结构的线性表,简称链表,链表与顺序表不同,链表的每个结点在内存中是分开存放的,每个结点都包含数据域和指针域:
- 数据域 :存储数据元素本身
- 指针域 :存储相邻结点的地址
链式存储结构的线性表有
- 单链表:每个结点只包含直接后继的地址信息
- 循环链表: 单链表中的最后一个结点的直接后继为第一个结点
- 双向链表: 单链表中的结点包含直接前驱和后继的地址信息
- 双向循环链表:双向链表的最后一个结点的后继为第一个结点,第一个结点的前驱为最后一个结点
链表中的基本概念
- 头结点 : 链表