链式存储结构
上一节
下一节
本节介绍线性表的链式存储结构,它不需要用地址连续的存储单元来实现,因为它不要求逻辑上相邻的两个数据元素物理上也相邻,而是通过“链”,建立数据元素之间的逻辑关系。链式存储的线性表对于插入、删除操作不再需要移动数据元素,但它也失去了顺序表随机存取的优点。
链表是用一组不连续的存储单元来存放线性表中的数据,因此链表中结点的逻辑次序和物理次序不一定相同。为了正确地表示结点间的逻辑关系,在存储线性表时,存储每个数据元素值的同时,还要存储指示其后继结点的地址(或位置)信息,这两部分信息组成的存储映象叫结点。
结点和单链表的 C 语言描述
Typedef struct LNode {
ElemType data; // 数据域
struct Lnode *next; // 指针域
} LNode, *LinkList;
LinkList L;

