基于邻接关系的距离矩阵的计算成本

时间:2019-01-26 17:35:07

标签: algorithm graph

我知道邻接矩阵的计算成本为n * n。即,该图论结构在存在或不存在边的情况下,每对顶点都包含值0或1,因此需要n ^ 2的空间。我对基于邻接关系的距离矩阵的计算成本很感兴趣,其中每个条目都是邻接矩阵行之间的欧几里得距离。该矩阵是伪距离矩阵,因为如果两个相邻行相同,则它可以在非对角位置包含零。

例如,我们有五个路径图,它们的邻接矩阵如下:

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

然后,我们正在计算上述邻接矩阵各行之间的欧几里得距离的距离矩阵。该距离矩阵的形式为:

     1    2 3    4    5
1 0.00 1.73 1 1.73 1.41
2 1.73 0.00 2 1.41 1.73
3 1.00 2.00 0 2.00 1.00
4 1.73 1.41 2 0.00 1.73
5 1.41 1.73 1 1.73 0.00

我对距离矩阵计算的计算成本和整个过程的计算成本很感兴趣。

我们在igraph R中创建具有五个节点的路径图,如下所示:

path=graph.formula(1-2,2-3,3-4,4-5)

接下来,我们生成邻接矩阵:

adj.matrix=as.matrix(get.adjacency(path))

我们计算邻接矩阵行之间的欧几里得距离的距离矩阵:

dist.matrix=as.matrix(dist(adj.matrix)).

我对上述计算的计算成本很感兴趣。

0 个答案:

没有答案