排序:
- 插入排序
- 快速排序
- 冒泡排序
- 归并排序
贪心:
- 硬币问题
- 区间上的贪心
- 背包
搜索:
- 深度优先搜索
- 广度优先搜索
- 优化:剪枝+记忆化数组
基础动态规划:
- 01背包
- 分组背包
- 有依赖的背包
- 超大背包
- 类似数塔
- 最长上升子序列 非降子序列
图论:
- 最短路径:单源最短路,多源最短路
- 最小生成树
- 二分图最大匹配
- 图的割边,割点
常用有关数据结构:
- 堆 :手动建立及stl中的·堆·
- 并查集:食物链
- 栈:括号配对 表达式 火车进站
- 链表,模拟链表 小球移动
- 线段树
- 树状数组
常用技巧:
- 二分,三分搜索
- 尺取法
- 坐标离散化
数学相关:
- 素数筛子
- 快速幂
- 牛顿迭代法
- 辗转相除法
- 短除法
- 进制转换
- 高精度
- 矩阵相关
STL相关:
- vector
- stack
- queue,priority_queue
- set,multiset
- map,multimap
- utility中pair
- algorithm相关算法 排序查找: sort,lower_bound,upper_bound,next_permutation,unique
- 其他会用到头文件:ctype