【问题标题】:How to find a maximum flow in a planar graph?如何在平面图中找到最大流量?
【发布时间】:2012-05-19 18:18:10
【问题描述】:

我知道在平面图中找到最小割的算法。

工作时间为 O(NlogN)

您创建一个对偶图,其中每个顶点对应于原始图的分面,边对应于连接两个分面的最小边。

然后你使用 Dijkstra 在这个图中找到最小路径。

这样就可以找到一个最小切割并计算流量值。

但是我怎样才能找到任何提供此流量值的原始图边集?

【问题讨论】:

  • 这不只是路径的边缘吗?如果找到路径,您将拥有一组边,对吗?你问的是这个吗?
  • 嗯,没有。我在共轭图中找到了一条路径。它是一组边,形成一个切口。如果这些边中的每一个都被破坏 - 原始图将变成两个断开连接的图。

标签: algorithm graph flow cut


【解决方案1】:

您描述的算法仅适用于无向图(Reif 算法)。 Hassin 和 Johnson 展示了如何通过它来计算最大流量。最近表明,这些算法可以在 O(n loglog n) 时间内实现。参见 G. F. Italiano、Y. Nussbaum、P. Sankowski 和 C. Wulff-Nilsen 改进了无向平面图中最小割和最大流的算法。在过程中。第 43 届 ACM 计算理论 (STOC) 研讨会,圣何塞,2011 年。

在有向平面图中,已知最快的算法运行时间为 O(n log n) 参见 http://web.engr.oregonstate.edu/~glencora/papers/other/Borradaile08-thesis-dissertation.pdfhttp://compgeom.cs.uiuc.edu/~jeffe/pubs/parshort.html

【讨论】:

    猜你喜欢
    • 2023-03-22
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 2021-12-05
    • 2015-05-17
    • 1970-01-01
    相关资源
    最近更新 更多