【问题标题】:Find minimum-weight set of edges to remove that will make a graph acyclic找到要删除的最小权重边集,这将使图无环
【发布时间】:2021-06-07 19:10:25
【问题描述】:

给定一个正加权的无向循环图,我怎样才能找到最小的一组边来删除,这将使图成为非循环的?该算法必须在 O((E+V)logV) 时间内运行。

我试图解决这个问题,并考虑使用 Djikstra 的算法(因为它也在 O(E+VlogV) 时间内运行,但我很不确定如何继续前进。

【问题讨论】:

    标签: algorithm time-complexity graph-theory minimum-spanning-tree


    【解决方案1】:

    作为提示,一旦你这样做了,你剩下的必须是一个最大生成树(或最大生成森林,如果原始图未连接)。特别是:

    1. 剩余的图表必须是非循环的。
    2. 如果删除的边将现有的连接组件拆分为两个或多个 CC,则选择不删除两个新 CC 之间的边交叉点会留下一个边删除成本较低的无环图。
    3. 由于您将留下一棵生成树,因此您希望生成树中的权重最大,从而最大限度地降低删除边的成本。

    从这里,看看你是否能找到一种计算最大生成树的方法。作为提示,使用现有的最小生成树算法作为黑盒。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-16
      • 2011-12-02
      • 1970-01-01
      相关资源
      最近更新 更多