存储结构:数据结计算机中的表示,包括数据元素的表示和关系表示
线性表在计算机中的存储结构分为两种:顺序存储结构以及链式存储结构
链式存储结构-链表
链表的存储空间可能是不连续的,通过指针来表达元素与元素之间的前驱后继关系。
- 单向链表
头指针:确定线性表中第一个元素对应的存储位置
空指针:链表最后一个节点的指针值
带表头节点的单向链表: 第一个存放在第二个节点,在所有结点之前有一个表头结点
空表:
head = ^ 不带表头节点的空表
head -> //|^ 带了表头节点的空表
在单向链表的b,c之前插入x
- 单向循环链表
3.双向链表
每个结点都有两个指针域,用于存放前驱结点地址和后继结点地址
4.双向循环链表
类型描述和循环链表保持一致
5.静态链表
存储空间不是动态分配的,是静态分配的,C语言中由数组来完成的。
存储思想是链表的存储思想,只是空间是静态分配的。
和顺序表的不同之处:顺序表是顺序存储,静态链表是非顺序存储
C语言