两顶点之前有路径吗? (20 分)


这道题有一个坑点在于自身是有路径的

int hasPath(struct Graph *g, int v, int w){
	for(int i=0;i<g->v;i++)g->Adj[i][i]=1;
	for (int i = 0; i < g->v; i++)
            {
                for (int j =0; j <g->v; j++)
                {
                	for(int l = 0;l<g->v;l++){
                		if (g->Adj[i][j] ==1&& g->Adj[l][j]==1)
                        g->Adj[i][l] =1;
					}
                    
                }
            }
    int sum=1;
    //ghy(g,0,v);
	for(int i=0;i<g->v;i++){
		if(g->Adj[v][i]==1){
			for(int j=0;j<g->v;j++){
				if(g->Adj[i][j]==1){
					g->Adj[v][j]=1;
				}
			}
		} 
	}
	for(int i=0;i<g->v;i++){
		if(g->Adj[v][i]==1&&v!=i){
			sum++;
		}
	} 
	printf("%d\n",sum);
	sum=1;
	for(int i=0;i<g->v;i++){
		if(g->Adj[w][i]==1){
			for(int j=0;j<g->v;j++){
				if(g->Adj[i][j]==1){
					g->Adj[w][j]=1;
				}
			}
		} 
	}
	for(int i=0;i<g->v;i++){
		if(g->Adj[w][i]==1&&w!=i)sum++;
	} 
	printf("%d\n",sum);
    if(g->Adj[v][w]==1)return 1;
    else return 0;
} 
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 12:04
毕业生招你惹你了,问一个发薪日来一句别看网上乱七八糟的你看哪个工作没有固定发薪日扭头就取消了面试就问了一句公司都是这个态度吗还搞上人身攻击了...
程序员小白条:呃呃呃,都还没面试,我都不会问这么细,何况通不通过,去不去都另说,你没实力和学历的话,在外面就这样,说实话没直接已读不回就不错了,浪费时间基本上
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:02
ssob上原来真有BOSS啊
硫蛋蛋:这种也是打工的,只不是是给写字楼房东打工
点赞 评论 收藏
分享
点赞 评论 收藏
分享
07-09 18:33
门头沟学院 Java
这么逆天每年都有人去???&nbsp;填多益网申就是大型的服从性测试
鲁大牛:辅导员在群里发了这个公司我就申了一下。网申居然要写当场开摄像头写两篇不少于三百字的作文。太逆天了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务