一、基础算法
-
排序
- 快速排序 (不常用)
- 归并排序
- 求逆序对
-
二分
-
前缀和
-
一维
-
二维
-
-
差分
- 一维
- 二维
-
双指针
-
离散化
-
区间合并
-
位运算(lowbit(x))
-
高精度
- A+B
- A-B
- A*B (高精度整数A乘低精度整数b)
- A/B (高精度整数A除低精度整数b)
二、 数据结构
- 链表、栈、队列 (数组模拟)
- 单调栈
- 单调队列
- 二维单调对象(区间最大值)
- 堆
- KMP
- Trie
- 线段树(待优化),另见博客
- 树状数组
- 并查集(待优化)
三、 图论
- 邻接表——链式前向星
- 拓扑排序
- 最短路
- Dijkstra
- 朴素
- 堆优化
- BEllman-Ford
- SPFA
- Floyd
- Dijkstra
- 二分图
- 最小生成树
- Prim
- Kruskal
四、数论
- 质数与约数
- 埃氏筛
- 欧拉筛
五、 动态规划
- 背包问题
- 区间dp
- 线性dp
- 状态dp
- 数位dp
明天蓝桥杯省赛了,做了大前年的题目道心破碎,特意来总结一下学过的算法,希望明天好运吧!