【问题标题】:Does igraph has "has_path" function?igraph 有“has_path”功能吗?
【发布时间】:2021-07-23 19:00:15
【问题描述】:

我正在尝试将代码从 python NetworkX 移植到 R igraph。在 NetworkX 中有一个名为 has_path 的函数,用于查找两个顶点是否有路径。我想以一种有效的方式找到图的所有顶点,它们之间没有边但它们有路径。

【问题讨论】:

    标签: r igraph


    【解决方案1】:

    我想你可以使用下面的代码来检查是否存在从顶点V1V2 的路径(图可以是有向的或无向的)

    c(!is.infinite(distances(g, V1, V2, mode = "out")))
    

    【讨论】:

      【解决方案2】:

      如果您需要在无向图中重复检查这一点,只需将其分解为连接的组件并检查两个顶点是否在同一个组件内。这将非常有效,因为只需找到一次组件。

      请参阅components 函数。它为您提供了一个会员向量。您需要检查两个顶点对应的位置是否具有相同的值(相同的组件索引)。

      如果图形是有向的,最简单的解决方案是@ThomasIsCoding 发布的解决方案。这对于一次性检查来说非常好。加快重复检查的速度会更麻烦,而且有其自身的问题。

      【讨论】:

        猜你喜欢
        • 2021-11-01
        • 1970-01-01
        • 2011-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-07-26
        • 1970-01-01
        相关资源
        最近更新 更多