第三章 线性表的定义与实现
定义
由同一类型的数据元素构成的有序序列的线性结构。
线性表中元素个数是线性表的长度。
顺序存储
指在内存中用地址连续的一块存储空间顺序存放线性表的各元素
初始化:
1 | List MakeEmpty() |
查找
与X在表中的位置有关,也与表长有关。平均查找长度(n+1)/2。
1 | Position Find(List L, ElementType X) |
插入
将数据插入到第i个位置上(1<=i<=n+1)
- 检查是不是满了
- 插入位序的合法性
- 数据移动的次序和方向:平均移动次数n/2
1 | /*插入的位置i是1<=i<=n+1*/ |
删除
平均移动次数(n-1)/2
1 | bool Delete(List L, int i){ |
链式存储
顺序表的存储特点是物理上的相邻实现了逻辑上的相邻。
求表长
需要将线性表从头到尾遍历一遍
查找
插入
1 | bool Insert(List L, ELementType X, int i){ |
删除
1 | bool Delete(List L, int i){ |
广义表与多重链表
- 本文作者: Doted Wood
- 本文链接: http://example.com/2022/01/12/数据结构/数据结构线性表/
- 版权声明: 版权归博主所有,转载请说明来源