1. 排序与搜索算法 #
1.1 排序算法 #
- 冒泡排序
- 快速排序
- 归并排序
- 堆排序
- 插入排序
- 选择排序
- 希尔排序
- 计数排序
- 基数排序
- 桶排序
1.2 搜索算法 #
- 线性搜索
- 二分搜索
- 深度优先搜索
- 广度优先搜索
- 哈希搜索
- 插值搜索
- 指数搜索
- 跳表搜索
2. 图论算法 #
2.1 最短路径算法 #
- Dijkstra算法
- Bellman-Ford算法
- Floyd-Warshall算法
- A*搜索算法
- SPFA算法
2.2 最小生成树算法 #
- Prim算法
- Kruskal算法
- Boruvka算法
2.3 网络流算法 #
- Ford-Fulkerson方法
- Edmonds-Karp算法
- Dinic算法
- 最大流最小割定理
2.4 图匹配算法 #
- 匈牙利算法
- Hopcroft-Karp算法
- 稳定婚姻问题算法
3. 动态规划算法 #
3.1 经典动态规划问题 #
- 背包问题
- 最长公共子序列
- 最长递增子序列
- 矩阵链乘法
- 编辑距离
- 硬币找零问题
- 最大子数组和
3.2 状态压缩动态规划 #
- 旅行商问题
- 状态空间优化技巧
- 位运算在动态规划中的应用
4. 字符串算法 #
4.1 字符串匹配算法 #
- KMP算法
- Boyer-Moore算法
- Rabin-Karp算法
- 有限自动机匹配
- Sunday算法
4.2 字符串处理算法 #
- 后缀数组
- 后缀树
- 字典树
- AC自动机
- 回文串算法
5. 数论与组合算法 #
5.1 数论算法 #
- 欧几里得算法
- 扩展欧几里得算法
- 素数判定算法
- 质因数分解
- 模运算与同余
- 中国剩余定理
5.2 组合数学算法 #
- 排列组合计算
- 卡特兰数
- 斯特林数
- 容斥原理
- 生成函数
6. 计算几何算法 #
6.1 基本几何算法 #
- 点与线的关系判断
- 线段相交检测
- 凸包算法
- 多边形面积计算
- 最近点对问题
6.2 高级几何算法 #
- 扫描线算法
- 旋转卡壳
- 半平面交
- Voronoi图
- Delaunay三角剖分
7. 近似算法与随机算法 #
7.1 近似算法 #
- 集合覆盖问题
- 旅行商问题近似解
- 顶点覆盖问题
- 装箱问题
- 近似比分析
7.2 随机算法 #
- 随机快速排序
- 蒙特卡洛方法
- 拉斯维加斯算法
- 随机游走
- 概率分析
8. 并行与分布式算法 #
8.1 并行算法 #
- 并行排序算法
- 并行搜索算法
- 并行图算法
- MapReduce模型
- 并行计算模型
8.2 分布式算法 #
- 一致性算法
- 拜占庭将军问题
- 分布式哈希表
- 分布式排序
- 分布式图算法
9. 机器学习算法 #
9.1 监督学习算法 #
- 线性回归
- 逻辑回归
- 支持向量机
- 决策树
- 随机森林
- 神经网络
9.2 无监督学习算法 #
- K-means聚类
- 层次聚类
- 主成分分析
- 关联规则挖掘
- 异常检测算法
10. 数据库与信息检索算法 #
10.1 数据库算法 #
- B树与B+树
- 哈希索引
- 查询优化算法
- 事务处理算法
- 数据压缩算法
10.2 信息检索算法 #
- 倒排索引
- PageRank算法
- TF-IDF算法
- 潜在语义分析
- 推荐系统算法
11. 密码学与安全算法 #
11.1 加密算法 #
- 对称加密算法
- 非对称加密算法
- 哈希函数
- 数字签名
- 密钥交换协议
11.2 安全协议算法 #
- 身份认证协议
- 安全多方计算
- 零知识证明
- 区块链共识算法
- 安全哈希算法
12. 实时与嵌入式系统算法 #
12.1 实时调度算法 #
- 速率单调调度
- 最早截止时间优先
- 最小松弛度优先
- 优先级继承协议
- 优先级天花板协议
12.2 嵌入式系统算法 #
- 内存管理算法
- 电源管理算法
- 传感器数据处理
- 嵌入式机器学习
- 实时操作系统算法