解决带有一些约束的极小极大路径问题

时间:2019-02-23 18:19:18

标签: algorithm path max minimax

我有一个问题,其中给出了具有正权重的无向图。有N个顶点,我需要获得从顶点1到N的所有可能路径的路径中2个顶点之间最大权重的最小值。但是这些可能路径的总权重不能超过T。

我意识到这是一个最小最大路径问题,因此我可以从图中构造一个最小生成树,然后从那里可以获取路径的最小最大权重。但是,如何构造最小生成树并约束从1到N的总权重不能超过T?

Example graph

例如。在图片中,如果T为13,则只有1256和1356是可能的路径。未考虑路径1456,因为总权重总计为14。

在1256和1356之间,权重7的边35是路径的最小最大权重。

1 个答案:

答案 0 :(得分:0)

假设正边权重,则可以通过对m个边中的哪一个是最小最大值进行二元搜索来在O((m + n log n)log m)时间内解决此问题。二进制搜索需要O(log m)次迭代,使用Dijkstra的算法每次都需要O(m + n log n)次迭代,才能在图上找到最短路径,且所有边的权重均不超过最大值,从而测试是否存在从1到N的距离足够短。