MLPACK
1.0.4
|
A Union-Find data structure. More...
Public Member Functions | |
UnionFind (const size_t size) | |
Construct the object with the given size. | |
~UnionFind () | |
Destroy the object (nothing to do). | |
size_t | Find (const size_t x) |
Returns the component containing an element. | |
void | Union (const size_t x, const size_t y) |
Union the components containing x and y. | |
Private Attributes | |
arma::Col< size_t > | parent |
arma::ivec | rank |
size_t | size |
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 40 of file union_find.hpp.
mlpack::emst::UnionFind::UnionFind | ( | const size_t | size | ) | [inline] |
Construct the object with the given size.
Definition at line 49 of file union_find.hpp.
mlpack::emst::UnionFind::~UnionFind | ( | ) | [inline] |
Destroy the object (nothing to do).
Definition at line 59 of file union_find.hpp.
size_t mlpack::emst::UnionFind::Find | ( | const size_t | x | ) | [inline] |
Returns the component containing an element.
x | the component to be found |
Definition at line 67 of file union_find.hpp.
References parent.
Referenced by Union().
void mlpack::emst::UnionFind::Union | ( | const size_t | x, |
const size_t | y | ||
) | [inline] |
Union the components containing x and y.
x | one component |
y | the other component |
Definition at line 87 of file union_find.hpp.
arma::Col<size_t> mlpack::emst::UnionFind::parent [private] |
Definition at line 44 of file union_find.hpp.
Referenced by Find(), Union(), and UnionFind().
arma::ivec mlpack::emst::UnionFind::rank [private] |
Definition at line 45 of file union_find.hpp.
Referenced by Union(), and UnionFind().
size_t mlpack::emst::UnionFind::size [private] |
Definition at line 43 of file union_find.hpp.
Referenced by UnionFind().