2 u012393768 u012393768 于 2013.12.06 17:18 提问

我自己编的克鲁斯卡尔算法求最小生成树,但是编译不出,求赐教

#include "stdio.h"
#include "stdlib.h"
#include "iostream.h"
#define N 10
typedef struct edge
{
int stvex[N];//边起点
int edvex[N];//边终点
int lowcost[N];//权值,按大小顺序排列
struct edge *next;
}edge;
int KLSKER (int lowcost[N],int stvex[N],int edvex[N] )
{
int e,h;
struct edge *stp;
struct edge *edp;
for(int i=2;i {
for(int j=0;j {
if((stvex[i]==stvex[j])||(stvex[i]=edvex[j]))
return stvex[j]||edvex[j];
if((edvex[i]==stvex[j])||(edvex[i]==edvex[j]))
return stvex[j]||edvex[j];
if(stvex[j]==edvex[j])//??????
stp=&stvex[i];
e=*stp;
stp=stp->next;
free(stp);
edp=&edvex[i];
h=*edp;
edp=edp->next;
free(edp);
}
}
cout<<"("< }
void main()
{
int e,edgenum,vexnum;
cout cin>>vexnum;
cout<<"请输入边数"< cin>>edgenum;
cout<<"请大小顺序输入各边权值,相同权值并列排后"< for(int i=0;i {
cin>>e;
edge->lowcost[i]=e;
}
cout<<"请将边的2个顶点依次输入,编号小的边视为起点。输入的顶点与相应的边权值对应"< cout for(int j=0;j {
cin>>e;
edge->stvex[j]=e;
}
cout<<"请输入边终点"< for(int k=0;k {
cin>>e;
edge->edvex[k]=e;
}
KLSKER();
return 0;
}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!