39 while (y->parent != y) {
45 while (w->parent != w) {
57 if (y == x || y->parent == y) {
76 if (x->node_rank < y->node_rank) {
79 }
else if (y->node_rank < x->node_rank) {
void DisjointSetUnion(T *x, T *y)
T * DisjointSetFindRecursive(T *x)
T * DisjointSetFind(T *x)
void DisjointSetMerge(T *x, const T *y)
void DisjointSetMakeSet(T *x)
T * DisjointSetFindLoop(T *x)