基础算法

  • 模拟

  • 枚举

  • 贪心

  • 离散化

  • 高精度

  • 构造

  • 打表

  • 读入、输出优化

  • 位运算

排序

  • 基于比较的排序

    • 冒泡排序

    • 选择排序

    • 插入排序

    • 堆排序

    • 归并排序

    • 快速排序

  • 基于值的排序

    • 计数排序

    • 基数排序

图论

  • 最短路

    • 单源最短路

    • Dijkstra

    • Bellman-Ford

    • SPFA

    • 多源最短路

    • Floyd–Warshall

  • 生成树

    • Kruskal

    • Kruskal重构树

    • Prim

    • dfs序

    • 二叉树

    • 树上倍增

    • Trie树

  • DAG

    • Tarjan缩点

    • 拓扑排序

动态规划

  • 递推

    • 矩阵加速
  • 背包

  • 最长公共子序列

  • 区间dp

  • 树形dp

  • 数位dp

  • 状态压缩dp

  • 优化

    • 四边形不等式

    • 斜率优化

    • 单调队列优化

分治算法

  • 二分

    • 二分查找

    • 二分答案

    • 01分数规划

  • 倍增

    • 树上倍增

    • 稀疏表

  • 快速幂

    • 矩阵快速幂

字符串

  • KMP算法

  • AC自动机

数学

  • 向量

  • 组合计数

    • 计数原理

    • 排列组合

    • 容斥原理

  • 数论

    • 因数与倍数

    • 最大公因数

    • 最小公倍数

    • 因数分解

    • 素数

    • 素性判定

    • 素数筛法

    • 模运算

    • 剩余系

    • 乘法逆元

    • 中国剩余定理

  • 博弈论

    • min-max搜索

    • SG函数

数据结构

  • 线性结构

    • 线性表

    • 链表

    • 队列

  • 树形结构

    • 线段树

    • 树状数组

    • 并查集

  • 哈希表

  • STL

    • vector

    • map

    • set

    • priority_queue

搜索

  • bfs

    • 双向bfs
  • dfs

    • 剪枝

    • 启发式搜索

    • 迭代加深搜索

  • 随机化搜索

    • 爬山算法

    • 模拟退火

参考资料