“任意 MST 也是最小瓶颈生成树:若有另一棵树的最大边更轻,可在 MST 最大边诱导的割上找到更轻替换边,矛盾;最小瓶颈树反过来未必最小化总权。边权更新后,删除一条树边需要在新割上寻找替代边…”
形式陈述
三种更新模型与查询
在动态图更新协议下,维护固定顶点集上的无向带权图
输出状态是一片最小生成森林
以下固定经典 Holm–de Lichtenberg–Thorup(HDT)确定性结果:对从空边集开始的无向简单图,边插入、删除的摊还时间为
维护一个全局森林总权即可最坏
为使选择确定,可按
插边:环性质给出局部替换
插入
若
选定上述最坏对数保证的 Top Tree 后,可在
删树边:最轻 Replacement Edge
删除非树边不改变
这里只找到“任意跨割边”不足够。全动态连通性可以用第一条候选恢复连通,却可能选到很重的边;动态 MSF 必须维护按权比较的最小候选及其失效处理。
仅删边:还需要一个权重—层级不变量
先从初始 MSF 出发,扩展HDT 连通性结构:保留分层森林与小侧树边先提升的顺序,但在每层按权重递增检查小侧关联的非树边。除连通性与分量大小外,维护如下不变量:每个圈的最重边位于该圈的最低层级。这是只按任意次序扫描非树边时没有的额外条件。
该不变量说明最轻替代边必处于所有替代边的最高层。设同一删除割的两条候选
按权顺序扫描还负责保持该不变量:一个内部候选被提升时,同圈中比它轻、又与小侧相邻的候选已经在更高层;小侧的树边也已先提升。若相关圈离开小侧,则必须穿过一条尚未发现的更高层替代边,与搜索前提矛盾。每个仅删边实例内部,边只向上提升,沿用连通性记账可得对数平方的摊还删除成本。
全动态:用重建归约引入插入
上面的提升过程只负责一个固定初始边集中的删除。完整 HDT MSF 算法另外保存对数多个仅删边实例:每条全局非树边恰在其中一个实例里担当局部非树边,也可能作为树边出现在更高层实例中。删除全局树边时,从各实例返回的替代候选中选最轻的跨割边;这个局部/全局不变量保证真正最轻替代必在候选中。
插入或替代造成新的全局非树边时,把它与若干较小实例的非树边合并,重建一个容量按二次幂增长的新实例。为避免每次复制整片全局森林,归约只保留非树边端点间的必要树路径,把长路径压成带路径最大权的超级边;原路径任一边被删除时,对应超级边也失效。Top Tree 负责这些路径摘要及定位。
完整成本由两层记账组成:每个仅删边实例中,提升与删除每条边花对数平方;外层几何重建又控制一条非树边进入不同实例的次数。HDT 的归约定理将这两层以及
直觉
插入只制造一个新环,比较环上最重边即可作局部决定;删除树边却撕开一个割,必须从可能散布全图的非树边中找最轻跨割候选。动态 MSF 的困难正来自第二种搜索:仅删边层用权序与提升控制扫描,全动态层再用多个实例和几何重建处理插入。两个层次共同承担成本。
例子与边界
四边形真例
图有边
初始 MSF 为
随后插入
边界与近邻问题
权重改变可建模为删除旧边实例再插入新权边,但这会触发两次更新时间。顶点插删、动态图最短路、动态二边连通都有不同状态和证书。
负权不妨碍 MST cut/cycle 性质;有向图则对应最小树形图,不能使用同一替代边论证。多重边必须保留实例身份,并另行核对相应实现的规模参数;上面的经典复杂度表固定简单图。相等数值权不妨碍最优性,固定编号比较只是让维护结果唯一、执行可复现。
推论与应用
动态 MSF 可持续提供网络骨架总权、瓶颈路径和连通分量的最优生成树,并作为动态图稀疏化与替代边维护的核心实例。它严格强于只恢复连通的动态森林:replacement edge 必须按权最轻,这一额外证书不能由普通 fully dynamic connectivity 直接给出。
参考资料
-
上述 HDT 论文的 §4–5、Theorems 6–8 及 §5 末尾空间分析:原论文全文副本。§4 给仅删边结构,§5 给重建归约;超级边权取原路径的最大值。
-
Jacob Holm, Kristian de Lichtenberg and Mikkel Thorup, Poly-Logarithmic Deterministic Fully-Dynamic Graph Algorithms I: Connectivity and Minimum Spanning Tree, DIKU-TR-97/17, 1997,§3:两阶段机制的早期作者报告;这里的实现细节采用最终期刊版。
-
Jacob Holm, Kristian de Lichtenberg, and Mikkel Thorup, “Poly-Logarithmic Deterministic Fully-Dynamic Algorithms for Connectivity, Minimum Spanning Tree, 2-Edge, and Biconnectivity,” Journal of the ACM 48(4), 2001.
-
David Eppstein et al., “Sparsification—A Technique for Speeding Up Dynamic Graph Algorithms,” Journal of the ACM 44(5), 1997.
-
Monika R. Henzinger and Valerie King, “Randomized Fully Dynamic Graph Algorithms with Polylogarithmic Time per Operation,” Journal of the ACM 46(4), 1999.