【问题标题】:How can I get Euclidean distance matrix from adjacency matrix if the distance between neighbours is fixed to one如果邻居之间的距离固定为1,如何从邻接矩阵中获取欧几里得距离矩阵
【发布时间】:2014-03-21 06:13:13
【问题描述】:

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

那么我如何获得点之间的距离??:

有没有算法可以做到这一点

【问题讨论】:

    标签: matlab euclidean-distance adjacency-matrix


    【解决方案1】:

    那么我如何获得点之间的距离??

    一般来说,你不能,假设你使用欧几里得距离作为标记。根据您提供的信息,您无法设计出独特的图表布局(嵌入)。

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

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

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

    要提出任何合理的建议,您必须首先在图表上施加某种布局。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2013-10-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-23
        • 2014-11-18
        • 2014-06-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多