STL标准库
Visual Studio 2017
以及不确定oj系统的c++版本支持状况 据说c++11是ok的
牢记万能头文件 #include
数据结构
- 基本
- pair
- O(n):
- vector
- list
- queue
- stack
- deque
O(nlgn)
数学计算
- accumulate
- power
- max
- min
- 基础数据处理
- swap
- iter_swap
- reverse
- itoa
- atoi
- 查找:
- find
- search
- binary_search
- lower_bound
- upper_bound
- nth_element
- max_element
- min_element
- 排序
- sort
字符串string
二分查找
- 第一个大于x的数
- 最后一个小于x的数
- 二分求旋转数组最低点https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array-ii/
- 不明显的二分
- 分治
- partition
- merge
- 贪心
- 最早截止期优先
- 动态规划
- 最大子矩阵
- 最长上升子序列的O(n2)算法和O(nlgn)算法
- 滑动窗口/双指针
- 位运算
- a^(~a) 去掉最后的1
- 状压dp枚举所有子集 for(int s=a;s!=0;s=(s-1)&a)
- 图
- 最短路径算法
- 单源点最短路径
- dijkstra的优先队列优化(正权)
- spfa(负权,可检测负环)
- 多源点最短路径
- floyed算法 O(n3)
- 单源点最短路径
- 最小生成树
- prim+优先队列
- Kruskal
- 连通性问题
- tarjan求强连通分量
- 拓扑排序——可求有无回路
- 最短路径算法
- 树
- 二叉树
- haffman树
- 字典树
- 线段树/树状数组
- 搜索
- 递归与回溯
- 八皇后
- 极大极小算法
- dfs
- bfs
- 递归与回溯
- 高精度
- 加减乘除
- 字符串
- 正则表达式
- 数学
- 最大公约数,最小公倍数
- 摩尔投票求众数
- 两个堆求数据流中的中位数