有向图瓶颈支撑树(BST)— 修改版 Dijkstra 算法

Dijkstra's Algorithm for Bottleneck Spanning Tree
算法控制 & 图视图
当前状态
请点击「开始算法」以启动演示,或先编辑图结构。
📐 本步计算过程
等待算法启动…
当前步
已加入集合 Xⱼ
当前选定节点 iⱼ₊₁
瓶颈值 Bottleneck(T)
节点 p(v) 值总览
p(v) = 从源点 s 到 v 的最短瓶颈路径值
节点p(v)前驱 pred(v)状态
算法伪代码
输入: G=(V,E), 代价 c(e)≥0,源点 s
(1) 初始化:∀i=1..n: d_i:=∞, d_s:=0
pred(i):=0, p_s:=0, j:=1
令 X_j := {s}
∀i∈E\X_j: p_i := c_{si}
∀i∈E\X_j: pred(i) := s
(2) 选 i_{j+1}: P_{i_{j+1}} = min_{i∈E\X_j} p_i
若 P_{i_{j+1}} = ∞ → STOP(无更多节点可达)
(3) X_{j+1} := X_j ∪ {i_{j+1}}, j := j+1
若 j = n → STOP(所有最短瓶颈路已知)
(4) ∀i∈X_j: 若 p_i > d_{i_j} + c_{i_j,i}
则 p_i := d_{i_j} + c_{i_j,i}
pred(i) := i_j
→ 回到步骤 (2)
图结构编辑
源点 (s)
(目标:BST)
构建从源点出发的
瓶颈支撑树
节点管理
边管理