链表(英语:Linked List)Wiki
</br>
特点
- 内存上不连续
- 每个节点储存到下个节点的指针
- 随机插入数据快
- 查找数据慢
- 无需知道数据大小,实现灵活的内存动态管理
</br>
api及时间复杂度
| Add | Remove | Indexing | |
|---|---|---|---|
| Beginning | O(1) | O(1) | - |
| Middle | O(1) | O(n) | O(n) |
| End | O(1) | O(1) | - |
| api | 作用 | 时间复杂度 |
|---|---|---|
| push_front | 增加节点到顶端 | O(1) |
| top | 返回顶端节点数据 | O(1) |
| pop_front | 删除并返回顶端节点数据 | O(1) |
| push_back | 增加节点到尾部 | O(1) |
| end | 返回尾部节点数据 | O(1) |
| pop_back | 删除并返回尾部节点数据 | O(n) |
| find | 查找特定节点 | O(n) |
| delete | 删除特定节点 | O(n) |
| is_empty | 检查是否为空 | O(1) |
| add_before | 在特定节点前插入 | O(n) |
| add_after | 在特定节点后插入 | O(1) |
| len | 返回链表长度 | O(1) |
</br>
实现
python:













网友评论