#include <DisjointSet.hpp>
Graphe d'héritage de DisjointSet_Base:

Fonctions membres publiques | |
| DisjointSet_Base (const Node) | |
| Constructeur de l'algorithme. | |
| virtual string | toString () |
| Retourne une chaîne de caractères détaillée. | |
| Node | mergeDisjointSet (Node, Node) |
| Fusionne 2 noeuds. | |
| virtual Node | makeDisjointSet ()=0 |
| Accomplis effectivement un algorithme de clusteringe. | |
| bool | sameDisjointSet (Node, Node) |
| Teste l'appartenance au même cluster de 2 points. | |
| Node | makeNode (string) |
| Retourne sous forme de graphe un le résultat du clustering. | |
| int | getParentSize (Node) |
| Retourne la taille du parent d'un noeud. | |
| Node | getParent (Node) |
| Retourne le cluster d'un noeud. | |
Fonctions membres protégées | |
| int | getParentRank (int) |
| retourn le rang d'un parent | |
Attributs protégés | |
| Node | graph |
| le graphe à clusteriser | |
| vector< Node > | vNode |
| les noeuds à étudier | |
| int | nbClass |
| le nombre de cluster en cours | |
| vector< Edge > | edge |
| les arretes du graphe clusterisés | |
Types privés | |
|
typedef map< int, Node >::iterator | table_iter |
| Itérateur des parents vers les noeuds. | |
Attributs privés | |
| vector< int > | parent |
| tableau d'index des parents d'un cluster | |
| vector< int > | size |
| tableau des tailles d'un cluster | |
| map< int, Node > | table |
| map des parents vers les noeuds | |
Cette classe implémente la compression de chemin
Définition à la ligne 20 du fichier DisjointSet.hpp.
|
|
Constructeur de l'algorithme.
Définition à la ligne 8 du fichier DisjointSet.cpp. Références DisjointSet_Base(), Node::getLeafSize(), Node::getNodeIterator(), Node::getNodeSize(), graph, Node_Iterator::hasNext(), nbClass, Node_Iterator::next(), parent, Node::setRank(), size, et vNode. Référencé par DisjointSet_Base(). |
|
|
retourn le rang d'un parent Retourne l'index du parent Réalise la compression de chemin Définition à la ligne 31 du fichier DisjointSet.cpp. Références getParentRank(), et parent. Référencé par getParent(), getParentRank(), getParentSize(), makeNode(), mergeDisjointSet(), et sameDisjointSet(). |
|
|
Retourne sous forme de graphe un le résultat du clustering. Construit un noeud après la fusion Définition à la ligne 143 du fichier DisjointSet.cpp. Références Node::addEdge(), Node::addNode(), edge, Edge::getDST(), getParentRank(), Node::getRank(), Edge::getSRC(), Edge::getWeight(), Edge::getX0(), Edge::getX1(), Edge::getY0(), Edge::getY1(), makeNode(), parent, Edge::setCoord(), Node::setPixel(), Node::setWeight(), table, table_iter, et vNode. Référencé par makeNode(). |
|
||||||||||||
|
Fusionne 2 noeuds. Fusion de 2 ensembles disjoint Réalise l'union par rang Définition à la ligne 43 du fichier DisjointSet.cpp. Références Node::addNode(), getParentRank(), Node::getRank(), Node::merge(), mergeDisjointSet(), nbClass, parent, size, table, et table_iter. Référencé par mergeDisjointSet(). |
1.3.7