🌲 Gabow-Tarjan 瓶颈支撑树算法 — 交互可视化

算法控制 & 图形视图
图例:
普通边
S₀中的边(≤λ₁)
E₁中的边(λ₁<c≤λ₂)
当前Sⱼ分组
不可达边
λ₁(下界)
λ₂(上界)
阶段 i
步骤
0 / 0
准备就绪
点击「下一步」开始演示 Gabow-Tarjan 分裂算法(PDF课件中的8节点示例图)。
📜 算法伪代码(同步高亮)
INPUT: G=(V,E), 边权c, 源点s
SET i:=0; λ₁:=min_cost; λ₂:=max_cost
LOOP: i := i+1
S₀ := {(v,w)∈E | c_vw ≤ λ₁}
E₁ := {(v,w)∈E | λ₁ < c_vw ≤ λ₂}
k(i) := 2^(i-1) (分组数)
将E₁划分为k(i)个子集S₁,...,Sₖ
(按边权排序后等分)
找最小j: G_j=(V, S₀∪S₁∪...∪Sⱼ)
使得s可达G_j中所有顶点
IF j=0: λ* = λ₁ → STOP 🎉
ELSE: λ₁ := min(Sⱼ), λ₂ := max(Sⱼ)
GOTO LOOP
🔢 当前阶段计算详情
等待开始...
✏️ 图结构编辑
源点 s
(算法用源点判可达性)
算法目标:找最小λ* 使得s可达所有点
节点管理
边管理(有向边,带权重)