Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
弗洛伊德';用Python实现的s算法。二维打印阵列_Python_Printing - Fatal编程技术网

弗洛伊德';用Python实现的s算法。二维打印阵列

弗洛伊德';用Python实现的s算法。二维打印阵列,python,printing,Python,Printing,我正在尝试打印实现floyds算法的python程序 n=5 for k in range(n): for j in range(n): for i in range(n): if A[i][k]+A[k][j]<A[i][j]: A[i][j]=A[i][k]+A[k][j] 500表示无穷大 有什么想法吗?我希望指数能起到作用 还有人知道这个算法的数量级吗?你可以用

我正在尝试打印实现floyds算法的python程序

n=5
    for k in range(n):
        for j in range(n):
            for i in range(n):
                if A[i][k]+A[k][j]<A[i][j]:
                    A[i][j]=A[i][k]+A[k][j]
500表示无穷大

有什么想法吗?我希望指数能起到作用

还有人知道这个算法的数量级吗?

你可以用这个

>>> A = [[0, 1, 4, 500, 3], [1, 0, 2, 500, 4],[4,2,0,1,5],[500,500,1,0,3],[3,4,5,3,0]]
>>> for elem in A:
        print "\t".join(['Inf' if val == 500 else str(val) for val in elem])


0   1   4   Inf 3
1   0   2   Inf 4
4   2   0   1   5
Inf Inf 1   0   3
3   4   5   3   0

帖子有点乱。。。也许你可以编辑一下?考虑到按enter键将退出代码示例{}。按住盖子的同时按回车键。一旦我明白了,也许我们能更好地帮助你。这就是我运行程序时得到的。为什么?01 3 4 3 1 0 2 3 4 3 2 0 1 4 3 1 0 3 3 4 4 3 0我不知道算法。你实施得对吗?我想是的。我使用了上面的程序。应该有两个类似的嵌套循环吗?对于范围(n)内的j,oh不,但即使将其更改为i,也不会产生指示的值
>>> A = [[0, 1, 4, 500, 3], [1, 0, 2, 500, 4],[4,2,0,1,5],[500,500,1,0,3],[3,4,5,3,0]]
>>> for elem in A:
        print "\t".join(['Inf' if val == 500 else str(val) for val in elem])


0   1   4   Inf 3
1   0   2   Inf 4
4   2   0   1   5
Inf Inf 1   0   3
3   4   5   3   0