int Links::addLink(Link &l) { bool inserted(false); int n1(l.n().n()); int n2(l.m().n()); for (Links::iterator it = begin(); it != end(); ++it) { if (l.cost() < it->cost() && !inserted) { insert(it, l); _vect[n1][n2] = l.cost(); _vect[n2][n1] = l.cost(); inserted = true; } } if (!inserted) { push_back(l); _vect[n1][n2] = l.cost(); _vect[n2][n1] = l.cost(); } return 0; }