2 #ifndef OPENGM_DISJOINT_SET_HXX
3 #define OPENGM_DISJOINT_SET_HXX
12 template<
class T=
size_t>
43 return elements_[i].size;
49 elements_ =
new elem[numberOfElements];
50 numberOfElements_ = numberOfElements;
51 numberOfSets_ = numberOfElements;
52 for(T i=0;i < numberOfElements;++i){
53 elements_[i].
rank = 0;
62 while(y != elements_[y].p){
77 if(elements_[x].rank > elements_[y].rank){
79 elements_[x].size += elements_[y].size;
83 elements_[y].size += elements_[x].size;
84 if(elements_[x].rank == elements_[y].rank){
104 for(T i=0;i<numberOfElements_;++i){
void representativeLabeling(std::map< T, T > &)