各种算法的复杂度
图论
- 
Dijkstra堆优化 \(O((n+m)logm)\) 
- 
Floyd \(O(n^3)\) 
- 
SPFA \(O(?)\) 
- 
Tarjan \(O(n+m)\) 
- 
欧拉回路 \(O(m+n)\) 
- 
网络流 \(O(n^2m)\) 
- 
最小生成树 \(O(nlogn)\) 
数据结构
- 
线段树 \(O(nlogn)\) 
- 
树状数组 \(O(logn)\) 
- 
并查集 \(O(一个很小的数)\) 
- 
单调队列和单调栈 均摊\(O(n)\) 
- 
ST表 预处理\(O(nlogn)\),查询\(O(1)\) 
- 
堆和优先队列 \(O(logn)\) 
字符串
- 
manacher \(O(n)\) 
- 
Trie树 \(O(len)\) 
- 
AC自动机 \(O(\sum\limits_{i=1}^{} s_i+26n+S)\),其中\(s_i\)为模式串的长度,\(n\)为节点个数,\(S\)为匹配串长度 
- 
KMP 前缀函数\(O(n)\),匹配\(O(n^2)\) 
数论
- 
快速幂 \(O(logn)\) 
- 
exgcd和gcd \(O(logn)\) 
- 
欧拉函数 \(O(n)\) 
- 
线性筛 \(O(n)\) 
 
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号