一些并查集理解

  • 对于启发式并查集来说,我们可以使用 O(1) 合并,O(log) 查询,也可以使用 O(log) 合并,O(1) 查询。
  • 假设 siz[pv] < siz[pu]。前者是合并时直接 p[pv] = pu,查询则必须要用 find 函数;后者是合并时遍历 pv 对应集合,将其根都设为 pu。
  • 前者的 p 数组记录的并非其真正祖先,必须要用 find 函数才能找到它的真祖先。
  • 前者可用于可撤销并查集,后者无法。

posted on 2024-07-25 02:47  wuhu12345  阅读(11)  评论(0)    收藏  举报

导航