并查集 (Union-Find) 可视化教学

并查集操作演示 🔬

初始化

ℹ️创建指定数量的节点,每个节点自成一个集合(树)。默认节点编号从 1 开始。

查找 (Find)

ℹ️查找指定元素所属集合的根节点(代表元素)。
ℹ️路径压缩是一种优化:在查找过程中,将路径上所有节点直接连接到根节点,大大加快后续查找速度。

合并 (Union)

ℹ️将两个元素所在的集合合并成一个。如果它们已在同一集合,则不操作。
ℹ️按秩(或按大小)合并是另一种优化:合并时,将较“矮”或较“小”的树连接到较“高”或较“大”的树的根上,尽量保持树的平衡,避免形成过长的链。

动画与视图

600ms

操作日志

请先点击“初始化”按钮开始。

并查集原理深究 🧠

并查集的核心在于高效地维护集合关系。其基础操作虽然简单,但通过两种关键优化技术——**路径压缩**和**按秩合并**——可以将平均操作时间复杂度降低到近乎 O(1)。

点击下方的按钮打开详细说明和 C++ 代码示例。

知识延伸与拓展 📚

基础的并查集已经非常强大,但它还有一些有趣的变体和更深入的应用:

  • 带权并查集
  • 可撤销/持久化并查集
  • 在并行计算中的应用
  • 与其他数据结构的结合

点击下方按钮,了解更多关于并查集的前沿知识和相关资源。

感谢学习!希望这个可视化工具对您有所帮助。