algorithm - 在具有约束的图中找到顶点不相交路径的最大数量

标签 algorithm graph theory np-complete

给定一个无向图 G=(V,E),每条边都与一个非负值相关联。

如何在图 G 上找到从 s 到 t 的最大顶点不相交路径数,并限制路径长度之和不大于预定义值 T。

最佳答案

您可以从将顶点不相交路径问题转换为边不相交路径问题开始。参见 this answer to other question了解详情。

现在你可以解决Minimum-cost flow problem在此图上找到任意数量的具有最小路径长度总和的不相交路径。这样做,为每条边分配等于 1 的流量,然后在 s 和 t 之间搜索流量等于所需路径数的最小成本流。

要找到最大路径数,对二分搜索的每个步骤应用最小成本流过程,从一些初始路径数开始,这可能由以下过程之一确定:

  1. 如果你预计路径的最大数量很大,解决Maximum flow problem对于这张图。
  2. 如果您希望路径的最大数量较小,请使用单边二分搜索(也使用每一步的最小成本流过程)。

关于algorithm - 在具有约束的图中找到顶点不相交路径的最大数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11440353/

相关文章:

algorithm - 算法的复杂度 : why 'about' ?

计算有向图平方的算法(以邻接表的形式表示)

d3.js - 如何对带环的有向图进行拓扑排序

oop - 你称它们为函数、过程还是方法?

mobile - 计算机科学的哪些领域与移动开发特别相关?

c++ - C 中的 limit.h 未确认值

algorithm - 为路径规划实现 D* Lite - 如何检测边缘成本变化?

algorithm - 最先进的分类算法

javascript - 隐藏表行时使用 rowspan 处理单元格

php - 谷歌图表是否被弃用?