You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在O(V+E)时间内判断s与t的瓶颈距离是否≤W?

思路提示:从反面转换问题

首先明确核心等价关系:

s与t的瓶颈距离 ≤ W ⇨ 不存在任何s到t的路径,其路径宽度(路径中边的最小权重)> W

而路径宽度>W的充要条件是路径上所有边的权重都>W(因为路径宽度是路径里的最小边权,最小边权>W意味着所有边都>W)。

所以问题可以转化为:

  • 构造子图G':仅保留原图G中边权>W的所有边
  • 用BFS或DFS(时间复杂度O(V+E))判断s和t在G'中是否连通
    • 如果不连通:说明没有全边权>W的路径,即所有路径的最小边权≤W,因此瓶颈距离≤W,返回True
    • 如果连通:说明存在路径的最小边权>W,因此瓶颈距离>W,返回False

这个思路完全复用了你熟悉的“删边+BFS/DFS”框架,只是调整了保留边的条件——从保留≥W的边改成保留>W的边,通过判断连通性推导相反结论。

补充逻辑验证:

  • 设瓶颈距离为B,B≤W等价于没有路径的min边权>W,也就是G'(边权>W的子图)中s和t不连通,逻辑自洽。
  • 算法时间复杂度为O(V+E):线性遍历所有边构造子图,加上BFS/DFS的线性时间开销。

内容的提问来源于stack exchange,提问作者user1171376

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 10:17:09