文章目录
-
- 第一部分:顺序表
-
- 1、顺序表的定义
- 2、顺序表的操作
- 3、顺序表的优缺点
- 第一部分习题
- 第二部分:单链表
-
- 1、单链表的定义
- 2、单链表的结点知识
- 3、单链表的操作
- 4、单链表的优缺点
- 第二部分习题
- 第三部分:双链表
-
- 1、双链表的结构
- 2、双链表的操作
- 第三部分习题
- 第四部分:静态链表
-
- 1、静态链表的定义
- 2、静态链表的操作
- 第四部分习题
- 小结
第一部分:顺序表
1、顺序表的定义
线性表的顺序存储方式就是用一组地址连续的存储单元依次存储线性表的各个元素,如图所示。可以借助一维数组(+长度)实现。
2、顺序表的操作
顺序表的插入、删除、修改、查找(统称:增删改查)
例如:
插入:AB中间加C 或者 后面加C
修改:把C改为E
删除:把E删除
查找:找到B
3、顺序表的优缺点
- 优点:(对比单链表)
(1)结构简单;
(2)可直接定位到表中任一元素,并可随机存取元素;连续存取速度快。 - 缺点:(对比单链表)
(1)存储空间难于准确静态分配,分配大了浪费空间,分配小了又可能不够用;
(2)插入、删除操作不大方便,需移动大量数据元素,效率较低。
第一部分习题
-
在一个长度为 n 的顺序存储的线性表中,向第 i 个元素(1≤i≤n+1)位置插入一个新元素时,需要从后向前依次后移(B)个元素。(代入法)
A.n-i
B.n-i+1(以后直接把具体数字代入这个 i )
C.n-i-1
D.i -
在一个顺序表的表尾插入一个元素的时间复杂度的量级为(B) 。
A.O( n n n)(头插的最坏情况和其他平均情况下的时间复杂度都是这个)
B.O( 1 1