Union-Find (Disjoint Set Union) urmărește o partiție de elemente în mulțimi disjuncte și suportă două operații aproape-O(1): find (în care mulțime se află x?) și union (îmbină două mulțimi). Excelează la interogări de conectivitate.
Ideea
Fiecare mulțime este un arbore cu o rădăcină reprezentativă. Cu și , operațiile rulează în timp aproape constant (inversul Ackermann, α(n)).
