当前位置:首页 >> IT/计算机 >>

Noi知识点总提纲


0. 算法的时空分析 0.1 时间分析 0.2 空间分析 0.3 时空分配 1. 基础算法 1.1 枚举 1.2 模拟 1.3 递推 1.4 贪心 1.5 递归 1.6 分治 2. 排序算法 2.1 冒泡排序 2.2 选择排序 2.3 桶排序 2.4 插入排序 2.5 归并排序 2.6 快速排序 2.7 堆排序 2.8 二叉排序树 3. 查找算法 3.1 顺序查找 3.2 二分查找 3.3 二分答案 4. 搜索算法 4.1 BFS 和 DFS 4.2 简单剪枝 4.3 记忆化搜索 5. 动态规划 5.1 动态规划初步 5.2 背包问题 5.3 最大(小)代价子母树 6. 排列组合 6.1 基本概念 6.2 二项式定理 6.3 康托展开 6.4 袋与球问题 7. 数论

7.1 7.2 7.3 7.4 7.5 7.6

素数判断 最大公约数 扩展欧几里德 不定方程 几类数列 数的进制

8. 线性表 8.1 数组和向量 8.2 堆栈 8.3 队列 8.4 字符串 9. 图 9.1 图的遍历和拓扑排序 9.1.1 图的遍历 9.1.2 拓扑排序 9.2 最短路 9.2.1 Floyd 算法 9.2.2 Dijstra 算法 9.2.3 Bellman-Ford 算法 9.2.4 SPFA 算法 9.3 生成树 9.3.1 Prim 算法 9.3.2 Kruskal 算法 9.4 圈和块 9.4.1 最小环 9.4.2 负权环 9.4.3 连通块 10. 树 10.1 树的遍历 10.2 树上距离问题 10.2.1 节点到根的距离 10.2.2 最近公共祖先 10.2.3 节点间的距离 10.2.4 树的直径 10.3 哈夫曼树 10.4 二叉堆 10.5 树形动态规划 10.6 二叉排序树 10.7 并查集 11. HASH 11.1 ELFhash 11.2 SDBM

11.3 BKDR 11.4 RK 12. 数论 12.1 矩阵乘法 12.2 高斯消元 12.3 异或方程组 13. 动态规划 13.1 多维状态动态规划 13.2 状态压缩动态规划 13.2.1 递推 13.2.2 基于连通性 13.3 动态规划优化 13.3.1 降低维度 13.3.2 优先队列 13.3.3 单调队列 13.3.4 矩阵加速 13.3.5 斜率优化 13.3.6 四边形不等式 14. 二分图 14.1 最大匹配 14.1.1 匈牙利算法 14.1.2 最大流算法 14.1.3 覆盖集和独立集 14.1.4 非二分图最大匹配 14.2 带权二分图匹配 14.2.1 KM 算法 14.2.2 费用流算法 15. 网络流 15.1 网络流初步 15.2 最大流 15.2.1 Dinic 算法 15.2.2 Sap 算法 15.2.3 有上下界的最大流 15.3 最小割 15.3.1 最小割 15.3.2 平面图最小割 15.3.3 闭合图 15.3.4 最小点权覆盖集与最大点权独立集 15.3.5 0/1 分数规划 15.3.6 最大密度子图 15.4 费用流 15.4.1 最短路增广费用流 15.4.2 zkw-费用流

15.4.3 最小费用可行流 16. 图和树 16.1 路径问题 16.1.1 K 短路 16.1.2 差分约束系统 16.2 生成树 16.2.1 生成树的另类算法 16.2.2 次小生成树 16.2.3 特殊生成树 16.3 2-SAT 16.4 线段树 16.5 平衡树 16.5.1 Treap 16.5.2 Splay 16.6 LCA 与 RMQ 16.7 树状数组 17. 字符串 17.1 Trie 17.2 KMP 及扩展 17.3 后缀数组 18. 选学内容 18.1 启发式搜索 18.2 跳舞链 18.3 随机调整与随机贪心 18.4 爬山法与模拟退火 18.5 博弈论 18.6 动态树 18.6.1 树链剖分 18.6.2 Link-Cut Tree 18.7 计算几何 18.8 DFT 和 FFT


相关文章:
更多相关标签: