ACM入门之【最小生成树】
生活随笔
收集整理的這篇文章主要介紹了
ACM入门之【最小生成树】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
prim模板
kruskal模板
const int N=1e5+10; int p[N],n,m,sum,cnt; struct node{int a,b,c;}; int find(int x) {if(x!=p[x]) p[x]=find(p[x]);return p[x]; } bool cmp(node a,node b){return a.c<b.c;} vector<node>ve; void kruskal() {for(int i=1;i<=n;i++) p[i]=i;sort(ve.begin(),ve.end(),cmp);for(int i=0;i<ve.size();i++){int a=ve[i].a,b=ve[i].b,c=ve[i].c;if(find(a)==find(b)) continue;sum+=c,cnt++;p[find(a)]=find(b);} }858. Prim算法求最小生成樹
859. Kruskal算法求最小生成樹
總結
以上是生活随笔為你收集整理的ACM入门之【最小生成树】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ACM入门之【最短路】
- 下一篇: ACM入门之【二分图】