A Union-Find data structure. More...
Public Member Functions | |
| UnionFind (const size_t size) | |
| Construct the object with the given size. More... | |
| ~UnionFind () | |
| Destroy the object (nothing to do). More... | |
| size_t | Find (const size_t x) |
| Returns the component containing an element. More... | |
| void | Union (const size_t x, const size_t y) |
| Union the components containing x and y. More... | |
A Union-Find data structure.
See Cormen, Rivest, & Stein for details. The structure tracks the components of a graph. Each point in the graph is initially in its own component. Calling Union(x, y) unites the components indexed by x and y. Find(x) returns the index of the component containing point x.
Definition at line 30 of file union_find.hpp.
|
inline |
Construct the object with the given size.
Definition at line 38 of file union_find.hpp.
|
inline |
Destroy the object (nothing to do).
Definition at line 48 of file union_find.hpp.
|
inline |
Returns the component containing an element.
| x | the component to be found |
Definition at line 56 of file union_find.hpp.
Referenced by UnionFind::Union().
|
inline |
Union the components containing x and y.
| x | one component |
| y | the other component |
Definition at line 76 of file union_find.hpp.
References UnionFind::Find().