You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.5 KiB
28 lines
1.5 KiB
## 一、数据结构
|
|
1. 单链表(带头结点、不带头结点)设计与实现(增删改查),双链表设计与实现
|
|
2. 栈设计与实现(数组和链表),队列设计与实现(数组和链表)
|
|
3. 二叉树概念学习,二叉树前序、中序、后序遍历递归、非递归实现 ,层序遍历
|
|
4. 二叉排序树设计与实现(插入删除)
|
|
5. 堆(优先队列、堆排序)
|
|
6. AVL(平衡)树设计与实现(四种自旋方式理解实现)
|
|
7. 伸展树、红黑树原理概念理解
|
|
8. B、B+原理概念理解
|
|
9. 哈夫曼树原理概念理解(贪心策略)
|
|
10. 哈希(散列表)原理概念理解(几种解决哈希冲突方式)
|
|
11. 并查集/不相交集合(优化和路径压缩)
|
|
12. 图论拓扑排序
|
|
13. 图论dfs深度优先遍历、bfs广度优先遍历
|
|
14. 最短路径Dijkstra算法、Floyd算法、spfa算法
|
|
15. 最小生成树prim算法、kruskal算法
|
|
16. 其他数据结构线段树、后缀数组等等
|
|
## 二、经典算法
|
|
1. 递归算法(求阶乘、斐波那契、汉诺塔问题)
|
|
2. 二分查找
|
|
3. 分治算法(快排、归并排序、求最近点对等问题)
|
|
4. 贪心算法(使用较多,区间选点问题,区间覆盖问题)
|
|
5. 常见动态规划(LCS(最长公共子序列) LIS(最长上升子序列)背包问题等等)
|
|
6. 回溯算法(经典八皇后问题、全排列问题)
|
|
7. 位运算常见问题(参考剑指offer和LeetCode问题)
|
|
8. 快速幂算法(快速求幂乘、矩阵快速幂)
|
|
9. kmp等字符串匹配算法
|
|
10. 一切其他数论算法(欧几里得、拓展欧几里得、中国剩余定理等等) |