![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
图论
包含最短路算法,最小生成树等图论算法
小王的算法之路
这个作者很懒,什么都没留下…
展开
-
图论-欧拉路径
图论知识原创 2022-06-07 16:29:19 · 364 阅读 · 0 评论 -
图论-二分图-二分图可以解决的问题
图论知识原创 2022-06-06 21:25:36 · 109 阅读 · 0 评论 -
图论-二分图-匈牙利算法
图论知识原创 2022-06-06 21:12:28 · 50 阅读 · 0 评论 -
图论-二分图-染色法求二分图
图论知识原创 2022-06-06 20:41:06 · 71 阅读 · 0 评论 -
图论-双联通分量-点的双连通分量
图论知识原创 2022-06-06 16:48:49 · 181 阅读 · 0 评论 -
图论-双联通分量-边的双联通分量
图论知识原创 2022-06-06 16:37:11 · 91 阅读 · 0 评论 -
图论-强连通分量(SCC)
tarjan原创 2022-06-03 12:58:23 · 315 阅读 · 0 评论 -
图论-最小生成树-kruskal
时间复杂度(O(mlogN)O(mlogN)O(mlogN))模板struct Node{ int a, b, w; bool operator< (const Node& t) const { return w < t.w; }}e[M];for (int i = 0; i < m; i ++ ) { int a, b, c; scanf("%d%d%d", &a, &b, &原创 2022-05-10 22:56:01 · 102 阅读 · 0 评论 -
图论-单源最短路算法-dijkstra朴素版
时间复杂度:O(n2)O(n^2)O(n2)模板void dijkstra(){ memset(dist, 0x3f, sizeof dist); dist[1] = 0; //遍历n次,每次把一个dist最小的点放入集合中 for (int i = 1; i <= n; i ++ ) { int t = -1; for (int j = 1; j <= n; j ++ ) //如果j点没被使用原创 2022-05-04 19:25:42 · 279 阅读 · 0 评论 -
图论-单源最短路算法-dijkstra堆优化版
时间复杂度O(m∗logn)O(m*logn)O(m∗logn)模板int dijkstra(){ memset(dist, 0x3f, sizeof dist); dist[1] = 0; priority_queue<PII, vector<PII>, greater<PII>> heap; heap.push({0, 1}); while(heap.size()) { auto t = hea原创 2022-05-04 19:31:46 · 86 阅读 · 0 评论 -
图论-单源最短路算法-spfa
时间复杂度O(m)O(m)O(m)~O(n∗m)O(n*m)O(n∗m)模板int spfa(){ memset(dist, 0x3f, sizeof dist); dist[1] = 0; queue<int> q; q.push(1); st[1] = true; while (q.size()) { int t = q.front(); q.pop(); st[t] = fa原创 2022-05-04 19:37:13 · 71 阅读 · 0 评论 -
图论-最小生成树-prim
时间复杂度(O(n2)O(n^2)O(n2))模板int prim(){ memset(dist, 0x3f, sizeof dist); int res = 0; for (int i = 0; i < n; i ++ ) { int t = -1; for (int j = 1; j <= n; j ++ ) if (!st[j] && (t == -1 || dist[t] &g原创 2022-05-10 19:35:08 · 105 阅读 · 0 评论