求助,这代码哪错了(最小生成树)

qq_44934023 2019-05-15 01:04:23
#include <iostream> #include <algorithm> #include <stdio.h> using namespace std; typedef struct { int Head; int Tail; int lowcost; }data; data Edge[100]; bool cmp(data x,data y) { return x.lowcost<y.lowcost; } int find_root(int x,int a[]) { int x_root=x; while(a[x_root]!=-1) { x_root=a[x_root]; } return x_root; } int UN(int x,int y,int a[]) { int x_root=find_root(x,a); int y_root=find_root(y,a); if(x_root==y_root) { return 0; } else { a[x_root]=y_root; return 1; } } int main() { int n,m,c=0; scanf("%d%d",&n,&m); int a[n]; for(int i=0;i<n;i++) { a[i]=-1; } for(int j=0;j<m;j++) { scanf("%d%d%d",&Edge[j].Head,&Edge[j].Tail,&Edge[j].lowcost); } stable_sort(Edge,Edge+m,cmp); for(int l=0;l<m;l++) { int x=Edge[l].Head; int y=Edge[l].Tail; if(UN(x,y,a)) { c=c+Edge[l].lowcost; } } printf("%d",c); return 0; }
...全文
25 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧