1、其他的不多说,三重循环代码,哪里都可以找到。
2、代码如下:
for(int k = 1; k <= n; k++){
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
if(d[i][j] > d[i][k] + d[k][j]){
d[i][j] = d[i][k] + d[k][j];
}
}
}
}
3、为什么k一定要放在最外层,不是很懂。需要自己去理解。网上有很多,可以自己搜索一下,比如:
https://blog.youkuaiyun.com/weixin_43912738/article/details/120544578
反正,我还是没有理解。
4、自己参考了一个例子,模拟一下,如下图:
5、需要自己找其他只是去理解。待续中。。。