更新图中的路径矩阵

时间:2016-01-22 22:20:27

标签: java algorithm graph np

我有这个矩阵,它保存顶点之间的路径。例如对于4个顶点,我们有这样的矩阵:

0 0 1 1

1 0 1 1

0 0 0 1

0 0 0 0

这表明我们在(1,3)和&之间有路径。 (1,4)& (2,1)& (2,3)& (2,4)& (3,4)。

我的问题的输入是两个顶点之间的新路径,输出是该矩阵的更新。

例如:

输入:(3,2)

输出:

1 1 1 1

1 1 1 1

1 1 1 1

0 0 0 0

我想用这个顺序来做:O(V ^ 2)

1 个答案:

答案 0 :(得分:1)

N =顶点数。

你有新的优势:输入(A,B)。

1然后你遍历B: 对于每个现有边(B,X),你得到一个(可能是新的)边(A,X) => si N operation

2与A相同: 对于每个现有边(Y,A),您将获得(可能的新边)(Y,B) => si N operation

你用X和Y(最多2 N)做同样的事情。

3对于每个(Y,A)和(B,X),  你添加(Y,X),所以NxN操作。

所以它是O(N ^ 2)