COIN-OR::LEMON - Graph Library

Changeset 2004:b8f10207e3d6 in lemon-0.x for lemon/unionfind.h


Ignore:
Timestamp:
03/10/06 19:17:37 (14 years ago)
Author:
Mihaly Barasz
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@2616
Message:

UnionFindEnum?: one remaining bug; removing commented out code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/unionfind.h

    r2003 r2004  
    301301      IIter clit = _find(m[comp]);
    302302      ItemList &c = *clit->my_class;
    303       c.push_back(ItemType(a,0));
     303      c.push_back(ItemType(a,CIter()));
    304304      IIter ai = c.end();
    305305      --ai;
     
    348348
    349349        classes.erase(cb->my_class);
    350         // ehem: cb->my_class = 0;
    351350      }
    352351      else {
     
    359358
    360359        classes.erase(ca->my_class);
    361         // ehem: ca->my_class = 0;
    362360      }
    363361
     
    421419
    422420      ia->my_class = la->my_class;
    423       // ehem: la->my_class = 0;
    424421
    425422      ia->size = la->size;
     
    479476
    480477      ai->parent = clit;
    481       // ehem: ai->my_class = 0;
    482478      ++clit->size;
    483479
     
    497493
    498494      IIter ma = m[a];
    499       // ehem: if (ma == 0) return;
    500495
    501496      IIter la = _find(ma);
     
    503498        if (ma -> size == 1){
    504499          classes.erase(ma->my_class);
    505           // ehem: m.set(a,0);
    506500          return;
    507501        }
     
    517511      la->size--;
    518512      la->my_class->erase(ma);
    519       // ehem: m.set(a,0);
    520513    }
    521514
     
    530523    void eraseClass(const T &a) {
    531524      IIter ma = m[a];
    532       // ehem: if (ma == 0) return;
    533 // #     ifdef DEBUG
    534 //       CIter c = _find(ma)->my_class;
    535 //       for (IIter i=c->begin(); i!=c->end(); ++i)
    536 //      m.set(i->me, 0);
    537 // #     endif
    538525      classes.erase(_find(ma)->my_class);
    539526    }
     
    582569      // obsoleted:
    583570      bool valid() const { return l!=0 && i!=l->end(); }
    584     private:
    585       //void first(const ClassList &l) { i = l.begin(); validate(l); }
    586 //       void next(const ClassList &l) {
    587 //      ++i;
    588 //      validate(l);
    589 //       }
    590 //       void validate(const ClassList &l) {
    591 //      if ( i == l.end() )
    592 //        i = 0;
    593 //       }
    594571    };
    595572
     
    662639     
    663640      operator const T& () const { return i->me; }
    664       bool operator == (ItemIt it) const {
     641      bool operator == (ItemIt const &it) const {
    665642        return (l==it.l && i==it.i) || (!valid() && !it.valid());
    666643      }
    667       bool operator != (ItemIt it) const {
     644      bool operator != (ItemIt const &it) const {
    668645        return !(*this == it);
    669646      }
    670       bool operator < (ItemIt it) const {
     647      bool operator < (ItemIt const &it) const {
    671648        return (i < it.i);
    672649      }
     
    686663      // obsoleted:
    687664      bool valid() const { return l!=0 && i!=l->end(); }
    688     private:
    689 //       void first(const ItemList &il) { l=&il; i = l->begin(); validate(); }
    690 //       void next() {
    691 //      ++i;
    692 //      validate();
    693 //       }
    694 //       void validate() {
    695 //      if ( i == l->end() )
    696 //        i = 0;
    697 //       }
    698665    };
    699666
Note: See TracChangeset for help on using the changeset viewer.