template<typename IM>
class lemon::ExtendFindEnum< IM >
The class implements an Extend-Find data structure which is able to enumerate the components and the items in a component. The data structure is a simplification of the Union-Find structure, and it does not allow to merge two components.
- Precondition
- You need to add all the elements by the insert() method.
|
| ExtendFindEnum (ItemIntMap &_index) |
| Constructor.
|
|
int | insert (const Item &item) |
| Inserts the given element into a new component.
|
|
void | insert (const Item &item, int cls) |
| Inserts the given element into the given component.
|
|
void | clear () |
| Clears the union-find data structure.
|
|
int | find (const Item &item) const |
| Gives back the class of the item.
|
|
Item | item (int cls) const |
| Gives back a representant item of the component.
|
|
void | erase (const Item &item) |
| Removes the given element from the structure.
|
|
void | eraseClass (int cdx) |
| Removes the component of the given element from the structure.
|
|