安全边定理

尊重边集A的割的轻量边一定是安全边,这是所有MST贪心算法的理论基石

定义

形式化定义(定理21.1)

是一个连通无向图, 是包含在某棵 MST 中的边集,尊重 的任意割, 是穿过割 的一条轻量边。则边 安全的

相关定义:

  • 安全边:若 也包含在某棵MST中,则 的安全边
  • 尊重割:若 中没有边穿过割 ,则该割尊重
  • 轻量边:穿过割的边中权值最小的边

核心性质

性质描述
核心结论轻量边一定是安全边(在尊重 的割中)
逆命题安全边不一定是轻量边(习题21.1-2给出反例)
贪心选择性质安全边定理是MST问题贪心选择性质的严格表述
环性质(推论21.2)环上唯一最大权边不属于任何包含 的MST
割性质(推论21.3)割的唯一最小权边属于某棵MST(令 的特例)

关系网络

graph LR
    A["安全边定理"] --> B["最小生成树"]
    A --> C["Kruskal算法"]
    A --> D["Prim算法"]
    A --> E["贪心算法"]
    A --> F["割性质"]
    A --> G["环性质"]
    F --> A
    G --> B

章节扩展

第21章:最小生成树

安全边定理是CLRS第21.1节的核心理论结果,为GENERIC-MST算法及Kruskal、Prim算法提供了严格的数学基础。

定理21.1证明概要:

  1. 是一棵包含 的MST
  2. 中存在穿过割 的边 (因为 连通所有顶点)
  3. 加入 形成环 都穿过割
  4. 构造 连通且有 条边,是生成树
  5. (轻量边),故 也是MST
  6. (割尊重 ),故 安全

推论21.3(割性质):,割显然尊重空集,由定理21.1直接得:割的唯一最小权边属于某棵MST。

推论21.2(环性质): 是环 中唯一最大权边,则 不属于任何包含 的MST。用反证法:若MST 包含 ,则环 上存在 ,替换后 ,矛盾。

与GENERIC-MST的关系: GENERIC-MST通过循环不变式” 是某棵MST的子集”保证正确性。每次加入安全边后该性质保持,终止时 形成生成树且是MST子集,故 本身就是MST。

补充

补充说明

  • 安全边定理揭示了MST问题的贪心选择性质的数学本质:不需要考虑所有可能的边,只需选择”安全”的边
  • 轻量边和安全边是不同层次的概念:轻量边相对于某个割,安全边相对于某个边集。轻量边一定是安全边,但反过来不成立
  • 当所有边权不同时,每个割有唯一的轻量边,MST也唯一;但MST唯一不要求所有割都有唯一轻量边

参见