刷题分类与进度汇总

基本

  1. 数组
  2. 字符串
  3. 排序
  4. 矩阵
  5. 模拟
  6. 枚举

算法

  1. 动态规划
  2. 贪心
  3. 深度优先搜索
  4. 广度优先搜索
  5. 二分查找
  6. 回溯
  7. 递归
  8. 分治
  9. 记忆化搜索
  10. 归并排序
  11. 桶排序
  12. 计数排序
  13. 基数排序
  14. 快速选择

数据结构

基本数据结构

  1. 哈希表
  2. 二叉树
  3. 堆(优先队列)
  4. 链表
  5. 二叉搜索树
  6. 单调栈
  7. 有序集合
  8. 队列
  9. 拓扑排序
  10. 最短路
  11. 单调队列
  12. 双向链表
  13. 最小生成树
  14. 欧拉回路
  15. 双连通分量
  16. 强连通分量

高级数据结构

  1. 并查集
  2. 字典树
  3. 线段树
  4. 树状数组
  5. 后缀数组

技巧

  1. 双指针
  2. 位运算
  3. 前缀和
  4. 计数
  5. 滑动窗口
  6. 状态压缩
  7. 哈希函数
  8. 滚动哈希
  9. 扫描线

数学

  1. 几何
  2. 博弈
  3. 数论
  4. 组合数学
  5. 随机化
  6. 概率与统计
  7. 水塘抽样
  8. 拒绝采样