数据结构待实现清单
:material-circle-edit-outline: 约 298 个字 :material-clock-time-two-outline: 预计阅读时间 1 分钟
数据结构讲课套路
性质:顺序性质,结构性质
操作:比如查询,插入,删除
复杂度等特殊性质
做算法忌讳的就是算法里有不确定的地方
delete的套路就是转化为merge
树有两个常见的表示法
- 正常的
- 左儿子右兄弟
前者随机访问儿子速度快,但是空间开销大,因为多个儿子需要多个指针
后者随机访问儿子慢一点,但空间开销小,因为每个结点都只需要两个指针
选择哪个需要考虑
Linear
Linear ListCreateEmptyPush
StackPushPop
QueueArray/List
Sort
- 冒泡排序
- 插入排序
- 交换排序
- 选择排序
- 归并排序
- 快速排序
- 基数排序
- 计数排序
- 希尔排序
- 堆排序
- 桶排序
- 哈希算法
Tree
普通二叉树三种遍历
BSTFind1.递归/迭代InsertDelete
AVL旋转
- splay
- Heap
- 最大堆/最小堆
- Create
- Empty
- Full
- Insert
- Delete
- Build
- Huffman
- Build
- Set
- Find
- Union
Graph
- DEFINE
- Create
- Insert
- InsertVertex
- InsertEdge
- 遍历
- DFS
- BFS
- ShortestPath
- BFS
- Dijkstra
- Floyd
- MST
Search
build, insert, delete,
- AVL
- Splay
- BST
- B
- B+
- Leftist Heap
- define
- merge
- delete
- Skew Heap
- Binomial Queue
- FindMin
- Merge 1. MergeTree 2. MergeQueue
- Insert
- DeleteMin