Union-find data structure for representing disjoin sets of elements with few very quick operations: 1) union of two sets in one, 2) checking whether two elements pertain to the same set, 3) finding representative element (root) of each set by any set's element.
More...
|
| unsafe | UnionFind_MRFaceId () |
| | Constructs an empty (default-constructed) instance.
|
| |
| unsafe | UnionFind_MRFaceId (MR._ByValue_UnionFind_MRFaceId _other) |
| | Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
|
| |
| | UnionFind_MRFaceId (Const_UnionFind_MRFaceId _other) |
| | Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
|
| |
| | UnionFind_MRFaceId (UnionFind_MRFaceId _other) |
| | Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
|
| |
| unsafe | UnionFind_MRFaceId (ulong size) |
| | creates union-find with given number of elements, each element is the only one in its disjoint set Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
|
| |
| unsafe MR.UnionFind_MRFaceId | assign (MR._ByValue_UnionFind_MRFaceId _other) |
| | Generated from method MR.UnionFind<MR.FaceId>::operator=.
|
| |
| unsafe void | reset (ulong size) |
| | resets union-find to represent given number of elements, each element is the only one in its disjoint set Generated from method MR.UnionFind<MR.FaceId>::reset.
|
| |
| unsafe MR.Std.Pair_MRFaceId_Bool | unite (MR.FaceId first, MR.FaceId second) |
| | unite two elements,
|
| |
| unsafe bool | united (MR.FaceId first, MR.FaceId second) |
| | returns true if given two elements are from one set Generated from method MR.UnionFind<MR.FaceId>::united.
|
| |
| unsafe MR.FaceId | find (MR.FaceId a) |
| | finds the root of the set containing given element with optimizing data structure updates Generated from method MR.UnionFind<MR.FaceId>::find.
|
| |
| unsafe MR.FaceId | findUpdateRange (MR.FaceId a, MR.FaceId begin, MR.FaceId end) |
| | finds the root of the set containing given element with optimizing data structure in the range [begin, end) Generated from method MR.UnionFind<MR.FaceId>::findUpdateRange.
|
| |
| unsafe MR.Const_FaceMap | roots () |
| | sets the root of corresponding set as the parent of each element, then returns the vector Generated from method MR.UnionFind<MR.FaceId>::roots.
|
| |
| unsafe int | sizeOfComp (MR.FaceId a) |
| | returns the number of elements in the set containing given element Generated from method MR.UnionFind<MR.FaceId>::sizeOfComp.
|
| |
Union-find data structure for representing disjoin sets of elements with few very quick operations: 1) union of two sets in one, 2) checking whether two elements pertain to the same set, 3) finding representative element (root) of each set by any set's element.
- Template Parameters
-
| I | is the identifier of a set's element, e.g. FaceId Generated from class MR.UnionFind<MR.FaceId>. This is the non-const half of the class. |
◆ UnionFind_MRFaceId() [1/5]
| unsafe MR.UnionFind_MRFaceId.UnionFind_MRFaceId |
( |
| ) |
|
|
inline |
Constructs an empty (default-constructed) instance.
◆ UnionFind_MRFaceId() [2/5]
| unsafe MR.UnionFind_MRFaceId.UnionFind_MRFaceId |
( |
MR._ByValue_UnionFind_MRFaceId | _other | ) |
|
|
inline |
Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
◆ UnionFind_MRFaceId() [3/5]
| MR.UnionFind_MRFaceId.UnionFind_MRFaceId |
( |
Const_UnionFind_MRFaceId | _other | ) |
|
|
inline |
Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
◆ UnionFind_MRFaceId() [4/5]
Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
◆ UnionFind_MRFaceId() [5/5]
| unsafe MR.UnionFind_MRFaceId.UnionFind_MRFaceId |
( |
ulong | size | ) |
|
|
inline |
creates union-find with given number of elements, each element is the only one in its disjoint set Generated from constructor MR.UnionFind<MR.FaceId>::UnionFind.
◆ assign()
Generated from method MR.UnionFind<MR.FaceId>::operator=.
◆ find()
finds the root of the set containing given element with optimizing data structure updates Generated from method MR.UnionFind<MR.FaceId>::find.
◆ findUpdateRange()
finds the root of the set containing given element with optimizing data structure in the range [begin, end) Generated from method MR.UnionFind<MR.FaceId>::findUpdateRange.
◆ reset()
| unsafe void MR.UnionFind_MRFaceId.reset |
( |
ulong | size | ) |
|
|
inline |
resets union-find to represent given number of elements, each element is the only one in its disjoint set Generated from method MR.UnionFind<MR.FaceId>::reset.
◆ roots()
| unsafe MR.Const_FaceMap MR.UnionFind_MRFaceId.roots |
( |
| ) |
|
|
inline |
sets the root of corresponding set as the parent of each element, then returns the vector Generated from method MR.UnionFind<MR.FaceId>::roots.
◆ sizeOfComp()
| unsafe int MR.UnionFind_MRFaceId.sizeOfComp |
( |
MR.FaceId | a | ) |
|
|
inline |
returns the number of elements in the set containing given element Generated from method MR.UnionFind<MR.FaceId>::sizeOfComp.
◆ unite()
| unsafe MR.Std.Pair_MRFaceId_Bool MR.UnionFind_MRFaceId.unite |
( |
MR.FaceId | first, |
|
|
MR.FaceId | second ) |
|
inline |
unite two elements,
- Returns
- first: new common root, second: true = union was done, false = first and second were already united Generated from method
MR.UnionFind<MR.FaceId>::unite.
◆ united()
returns true if given two elements are from one set Generated from method MR.UnionFind<MR.FaceId>::united.
The documentation for this class was generated from the following file: