如果邻居之间的距离固定为1,我如何从邻接矩阵得到欧几里德距离矩阵

时间:2014-03-21 06:13:14

标签: matlab euclidean-distance adjacency-matrix

我有邻接矩阵,我不知道点的位置只知道邻接矩阵和邻居之间的距离是相等的。

所以我如何得到点之间的距离??:

有没有算法呢

2 个答案:

答案 0 :(得分:1)

  

所以我如何得到点之间的距离?

一般情况下,假设您使用欧几里德距离作为标记,则不能。根据您提供的信息,您无法想出图表的独特布局(嵌入)。

作为一个小的反例,采取邻接矩阵:

[0 1 1]
[1 0 0]
[1 0 0]

顶点1连接到顶点2,顶点3连接形成一个角度。段(1,2)和(1,3)之间的角度可以是我们想要的0°到180°之间的任何角度,使得顶点2和3之间的距离在0到2个单位之间。

要想出任何合理的东西,你必须首先在图表上强加某种布局。

答案 1 :(得分:0)

由于邻接矩阵表示图形,因此需要遍历图形以查找可能的路径。您可以使用breadth-first search执行此操作,因为图表未加权。请记住,某些点之间的距离可能是无限的,因为可能没有从一个点到另一个点的路径