1.1 --- a/lemon/preflow.h Sun Nov 25 22:56:44 2007 +0000
1.2 +++ b/lemon/preflow.h Tue Nov 27 15:41:43 2007 +0000
1.3 @@ -72,7 +72,7 @@
1.4 ///
1.5 /// \sa Elevator
1.6 /// \sa LinkedElevator
1.7 - typedef LinkedElevator<Graph, typename Graph::Node> Elevator;
1.8 + typedef Elevator<Graph, typename Graph::Node> Elevator;
1.9
1.10 /// \brief Instantiates an Elevator.
1.11 ///
1.12 @@ -100,7 +100,7 @@
1.13 /// directed graph. The preflow algorithms are the fastest known max
1.14 /// flow algorithms. The current implementation use a mixture of the
1.15 /// \e "highest label" and the \e "bound decrease" heuristics.
1.16 - /// The worst case time complexity of the algorithm is \f$O(n^3)\f$.
1.17 + /// The worst case time complexity of the algorithm is \f$O(n^2\sqrt{e})\f$.
1.18 ///
1.19 /// The algorithm consists from two phases. After the first phase
1.20 /// the maximal flow value and the minimum cut can be obtained. The
1.21 @@ -407,6 +407,7 @@
1.22 queue.push_back(_target);
1.23 reached.set(_target, true);
1.24 while (!queue.empty()) {
1.25 + _level->initNewLevel();
1.26 std::vector<Node> nqueue;
1.27 for (int i = 0; i < int(queue.size()); ++i) {
1.28 Node n = queue[i];
1.29 @@ -863,7 +864,7 @@
1.30 /// @}
1.31
1.32 /// \name Query Functions
1.33 - /// The result of the %Dijkstra algorithm can be obtained using these
1.34 + /// The result of the %Preflow algorithm can be obtained using these
1.35 /// functions.\n
1.36 /// Before the use of these functions,
1.37 /// either run() or start() must be called.