gpt4 book ai didi

c++ - 图补充的这些代码片段有什么区别?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:17:03 24 4
gpt4 key购买 nike

我已使用此代码片段来补充我的图表 -

for(i = 1; i <= n; i++)
{
for(j = 1; j <= n; j++)
{
if(i != j)
{
graph[i][j] = 1 - graph[i][j];
}
}
}

这给出了一个错误的答案。但是当我用下面的代码片段替换它时,它被接受了-

for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
if(graph[i][j] == 1)
graph[i][j] = 0;
else if(i != j)
graph[i][j] = 1;
}
}

我无法弄清楚这两者之间的区别。

最佳答案

这个:

if(i!=j)
{
graph[i][j]= 1-graph[i][j];
}

它和这个不一样:

if(graph[i][j] == 1)    graph[i][j] = 0;
else if(i != j) graph[i][j] = 1;

在第一个中,您要将矩阵修改为 1-N,但在对角线上除外。

给定这个矩阵:

 1 1 0
1 1 0
1 1 0

第一个代码会给你:

 1 0 0
0 1 0
0 0 0

第二个会给你:

 0 0 1
0 0 1
0 0 0

关于c++ - 图补充的这些代码片段有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39934728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com