算法 复习

排序:

  1. 插入排序
  2. 快速排序
  3. 冒泡排序
  4. 归并排序

贪心:

  1. 硬币问题
  2. 区间上的贪心
  3. 背包

搜索:

  1. 深度优先搜索
  2. 广度优先搜索
  3. 优化:剪枝+记忆化数组

基础动态规划:

  1. 01背包
  2. 分组背包
  3. 有依赖的背包
  4. 超大背包
  5. 类似数塔
  6. 最长上升子序列  非降子序列

图论:

  1. 最短路径:单源最短路,多源最短路
  2. 最小生成树
  3. 二分图最大匹配
  4. 图的割边,割点

常用有关数据结构:

  1. 堆 :手动建立及stl中的·堆·
  2. 并查集:食物链
  3. 栈:括号配对  表达式 火车进站
  4. 链表,模拟链表  小球移动
  5. 线段树
  6. 树状数组

常用技巧:

  1. 二分,三分搜索
  2. 尺取法
  3. 坐标离散化

数学相关:

  1. 素数筛子
  2. 快速幂
  3. 牛顿迭代法
  4. 辗转相除法
  5. 短除法
  6. 进制转换
  7. 高精度
  8. 矩阵相关

STL相关:

  1. vector
  2. stack
  3. queue,priority_queue
  4. set,multiset
  5. map,multimap
  6. utility中pair
  7. algorithm相关算法  排序查找:   sort,lower_bound,upper_bound,next_permutation,unique
  8. 其他会用到头文件:ctype
原文地址:https://www.cnblogs.com/wtblogwt/p/9708144.html