Kruskal最小生成树
Posted hanasaki
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kruskal最小生成树相关的知识,希望对你有一定的参考价值。
贪心+并查集
struct edge int from, to, dist; bool operator < (const edge &ths) const return dist < ths.dist; e[N]; int find(int k) return f[k] == k ? k : f[k] = find(f[k]); int main() int ans = 0; for(int i = 0; i < n; i++) scanf("%d%d%d", &e[i].from, &e[i].to, &e[i].dist); sort(e, e + n); for(int i = 0; i < n; i++) if(find(e[i].from) != find(e[i].to)) f[find(e[i].from)] = find(e[i].to); ans += e[i].dist;
以上是关于Kruskal最小生成树的主要内容,如果未能解决你的问题,请参考以下文章