Union-Find (Disjoint Set Union) suit une partition d'éléments en ensembles disjoints et supporte deux opérations quasi-O(1) : find (dans quel ensemble se trouve x ?) et union (fusionner deux ensembles). Il excelle aux requêtes de connectivité.
L'idée
Chaque ensemble est un arbre avec une racine représentative. Avec et , les opérations s'exécutent en temps quasi-constant (inverse Ackermann, α(n)).
