数据结构中图的拓扑排序~~想了很久,不知道为什么就是实现不了~求帮助!
程序代码:#include <stdio.h>
main(){
int a[4][4],Flag[4];
int i,j,n,sum=0; //i为行号,j为列号
for(i=1;i<=3;i++)
for(j=0;j<=3;j++) //第0列为所存元素,剩下的是邻接矩阵
scanf("%d",&a[i][j]);
for(i=1;i<=3;i++) //标记元素是否输出
Flag[i]=0;
n=1;
while(n<=3){ //n为元素个数
for(j=1;j<=3;j++)
{for(i=1;i<=3;i++)
sum=sum+a[i][j];
if(sum==0 && Flag[j]==0){
n++;
Flag[j]=0;
i=j;
printf("%d-->",a[i][0]);
for(j=1;j<=3;j++)
a[i][j]=0;
continue;
}
}
}
return 1;
}






