【问题标题】:find the minimum number of vertices in a directed graph from which the other vertices are reachable [closed]在有向图中找到可以到达其他顶点的最小顶点数[关闭]
【发布时间】:2014-01-14 00:00:49
【问题描述】:

在有向图中,我想在某些顶点上调用 bfs,以便满足所有顶点。

(换句话说,所有其他顶点都可以从这些选定的顶点到达。)

我想找到这样的顶点的最小数量。

实际上,这个问题出现在社交网络中,当我们想要找到发送消息的最少人数时,所有网络成员都会收到该消息。(假设我们知道某人何时收到消息他/她会将其发送给他/她的所有追随者。)

谁能帮忙?

【问题讨论】:

  • 这个问题似乎是题外话,因为它是关于Mathematics
  • 这个问题可以找到字典的另一个应用:最小的顶点集对应于你必须知道的单词才能理解整个字典。

标签: algorithm graph social-networking


【解决方案1】:

对于没有循环的图(即非循环图),它会很容易。所有没有传入边的节点都是最优解。因为所有其他节点都应该可以从其中一个节点访问。

对于有环的图,先找到strongly connected component,然后得到一个无环图。上面的方法再次起作用。

【讨论】:

  • 对于提问者,您能否解释一下他们如何避免因数学可以解决问题而被搁置,而不会因为它太宽泛而搁置?在我看来,很多问题都属于这两个类别之一。
  • 投赞成票,知文。但困惑为什么只有强连接组件?您可能有 A->B->C 不形成“强连接”组件?
  • 对于这种情况,您已经有了一个无环图,您可以从 {A} 到达所有其他节点吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-15
  • 1970-01-01
  • 1970-01-01
  • 2015-07-04
相关资源
最近更新 更多