“ETT 能直接判断分量、维护分量摘要,并作为 全动态连通性的生成森林容器。任意两点简单路径在循环 tour 中通常不是一个连续片段,所以路径最大值或路径乘积不如 Link–Cut Tree直…”
在线模型与选定保证 ​
维护固定顶点集
其中
删除树边为何困难 ​
只插边时,并查集可合并分量;删除一条非树边也不改变现有生成森林。困难发生在删除生成树边
从头扫描全部边能找到 replacement,却可能每次花
层级与森林不变量 ​
每条边
令
关键大小不变量是:
插入
replacement 搜索与提升 ​
删除 level
- 若边
的两端已在同一侧,它不能替换当前割;把它提升到 level ,以后不再在本层扫描。 - 若边跨越两侧,它成为 replacement tree edge,并在所有需要的低层森林中重新连接两棵树。
- 若本层没有跨割边,把较小侧中相应 level-
tree edges 一同提升,使 的分量大小不变量继续成立,再到下一层寻找。
之所以总看较小侧,是因为它至多占原分量一半;提升后,该边所在的更高层分量仍满足
摊还分析 ​
边的层级只增不减,最多从
其中
这不是单次最坏界:一次不幸的 tree-edge 删除可能检查许多候选,成本由那些候选以后不再停留在同一层这一事实偿还。若实现允许边层级下降,上述记账立即失效。
具体例子:三角形中的 replacement ​
图含三角形
若另有许多边都只连接
失败边界与模型区分 ​
离线动态连通预先知道每条边的活跃时间,可用时间线段树和 rollback DSU;HDT 不知道未来删除时刻,付出更复杂的分层 replacement 搜索。把离线总时间除以操作数不能得到在线 update bound。
本页只维护无向连通性。带权 replacement edge 要按权值选择,会进入 fully dynamic minimum spanning forest;判断桥、二边连通或有向强连通也需要更强不变量。多重边版本可以支持,但必须给每个边实例独立身份,否则删除其中一条会误删其余平行边。
参考资料
- Jacob Holm, Kristian de Lichtenberg, and Mikkel Thorup, “Poly-Logarithmic Deterministic Fully-Dynamic Algorithms for Connectivity, Minimum Spanning Tree, 2-Edge, and Biconnectivity,” JACM 48(4), 2001.
- David Eppstein, Zvi Galil, Giuseppe F. Italiano, and Amnon Nissenzweig, “Sparsification — A Technique for Speeding Up Dynamic Graph Algorithms,” JACM 44(5), 1997.
- Monika R. Henzinger and Valerie King, “Randomized Fully Dynamic Graph Algorithms with Polylogarithmic Time per Operation,” JACM 46(4), 1999.