equal
deleted
inserted
replaced
393 private: |
393 private: |
394 |
394 |
395 void createStructures() { |
395 void createStructures() { |
396 _node_num = countNodes(_graph); |
396 _node_num = countNodes(_graph); |
397 |
397 |
398 _max_tree_size = (double(_node_num) * double(_node_num)) / |
398 _max_tree_size = int((double(_node_num) * double(_node_num)) / |
399 double(countEdges(_graph)); |
399 double(countEdges(_graph))); |
400 |
400 |
401 if (!_flow) { |
401 if (!_flow) { |
402 _flow = Traits::createFlowMap(_graph); |
402 _flow = Traits::createFlowMap(_graph); |
403 _local_flow = true; |
403 _local_flow = true; |
404 } |
404 } |
825 queue.swap(nqueue); |
825 queue.swap(nqueue); |
826 } |
826 } |
827 _level->initFinish(); |
827 _level->initFinish(); |
828 |
828 |
829 for (NodeIt n(_graph); n != INVALID; ++n) { |
829 for (NodeIt n(_graph); n != INVALID; ++n) { |
830 if ((*_excess)[n] > 0 && _target != n) { |
830 if (!reached[n]) { |
|
831 _level->markToBottom(n); |
|
832 } else if ((*_excess)[n] > 0 && _target != n) { |
831 _level->activate(n); |
833 _level->activate(n); |
832 } |
834 } |
833 } |
835 } |
834 |
836 |
835 Node n; |
837 Node n; |