2020-07-18
2 min read
笔记-2020/07/18
https://VincentZ007.github.io/post/bi-ji-20200718/
https://VincentZ007.github.io/
热度🔥: loading...
顺序表与链表的比较
- 存取方式
顺序表可以顺序存取也可以随机存取,
链表只能从表头顺序存取元素。 - 逻辑结构与物理结构
采用顺序存储时,逻辑上相邻的元素,对应的物理存储位置也相邻。
采用链式存储时,逻辑上相邻的元素,对应的物理存储位置不一定相邻,逻辑关系是用指针来表示的。 - 查找、插入和删除
| null | 顺序表 | 链表 |
| 查找 | O(n) | O(n) |
| 插入 | O(n) | O(1) |
| 删除 | O(n) | O(1) | - 空间分配
顺序表是静态空间分配,
链表是动态空间分配。
实际应用中表的选取
- 基于存储考虑
顺序表:可以估计线性表的长度或存储规模时采用。
链表:不用事先知道存储规模,但链表的存储密度低。 - 基于运算考虑
顺序表:经常访问链表中的元素时使用。
链表:经常插入或者删除时使用。 - 基于环境考虑
顺序表:直接采用数组,容易实现。
链表:基于指针实现,相对较为繁琐。
上一篇
力扣-两数之和
下一篇
笔记-2020/07/08