Changes in / [787:c2230649a493:788:c92296660262] in lemon-main
- Files:
-
- 22 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/min_cost_flow.dox
r755 r788 79 79 - if \f$cost^\pi(uv)<0\f$, then \f$f(uv)=upper(uv)\f$. 80 80 - For all \f$u\in V\f$ nodes: 81 - \f$\pi(u) <=0\f$;81 - \f$\pi(u)\leq 0\f$; 82 82 - if \f$\sum_{uv\in A} f(uv) - \sum_{vu\in A} f(vu) \neq sup(u)\f$, 83 83 then \f$\pi(u)=0\f$. … … 146 146 - if \f$cost^\pi(uv)<0\f$, then \f$f(uv)=upper(uv)\f$. 147 147 - For all \f$u\in V\f$ nodes: 148 - \f$\pi(u) >=0\f$;148 - \f$\pi(u)\geq 0\f$; 149 149 - if \f$\sum_{uv\in A} f(uv) - \sum_{vu\in A} f(vu) \neq sup(u)\f$, 150 150 then \f$\pi(u)=0\f$. -
lemon/bellman_ford.h
r781 r788 301 301 /// \ref named-templ-param "Named parameter" for setting 302 302 /// \c OperationTraits type. 303 /// For more information see \ref BellmanFordDefaultOperationTraits.303 /// For more information, see \ref BellmanFordDefaultOperationTraits. 304 304 template <class T> 305 305 struct SetOperationTraits … … 719 719 /// 720 720 /// The shortest path tree used here is equal to the shortest path 721 /// tree used in \ref predNode() and \ predMap().721 /// tree used in \ref predNode() and \ref predMap(). 722 722 /// 723 723 /// \pre Either \ref run() or \ref init() must be called before … … 734 734 /// 735 735 /// The shortest path tree used here is equal to the shortest path 736 /// tree used in \ref predArc() and \ predMap().736 /// tree used in \ref predArc() and \ref predMap(). 737 737 /// 738 738 /// \pre Either \ref run() or \ref init() must be called before -
lemon/bfs.h
r787 r788 64 64 ///The type of the map that indicates which nodes are processed. 65 65 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 66 ///By default it is a NullMap.66 ///By default, it is a NullMap. 67 67 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 68 68 ///Instantiates a \c ProcessedMap. … … 849 849 ///The type of the map that indicates which nodes are processed. 850 850 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 851 ///By default it is a NullMap.851 ///By default, it is a NullMap. 852 852 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 853 853 ///Instantiates a ProcessedMap. -
lemon/circulation.h
r715 r786 307 307 /// able to automatically created by the algorithm (i.e. the 308 308 /// digraph and the maximum level should be passed to it). 309 /// However an external elevator object could also be passed to the309 /// However, an external elevator object could also be passed to the 310 310 /// algorithm with the \ref elevator(Elevator&) "elevator()" function 311 311 /// before calling \ref run() or \ref init(). -
lemon/concepts/digraph.h
r734 r786 108 108 109 109 /// This iterator goes through each node of the digraph. 110 /// Its usage is quite simple, for example you can count the number110 /// Its usage is quite simple, for example, you can count the number 111 111 /// of nodes in a digraph \c g of type \c %Digraph like this: 112 112 ///\code … … 197 197 /// This iterator goes trough the \e outgoing arcs of a certain node 198 198 /// of a digraph. 199 /// Its usage is quite simple, for example you can count the number199 /// Its usage is quite simple, for example, you can count the number 200 200 /// of outgoing arcs of a node \c n 201 201 /// in a digraph \c g of type \c %Digraph as follows. … … 242 242 /// This iterator goes trough the \e incoming arcs of a certain node 243 243 /// of a digraph. 244 /// Its usage is quite simple, for example you can count the number244 /// Its usage is quite simple, for example, you can count the number 245 245 /// of incoming arcs of a node \c n 246 246 /// in a digraph \c g of type \c %Digraph as follows. … … 286 286 287 287 /// This iterator goes through each arc of the digraph. 288 /// Its usage is quite simple, for example you can count the number288 /// Its usage is quite simple, for example, you can count the number 289 289 /// of arcs in a digraph \c g of type \c %Digraph as follows: 290 290 ///\code -
lemon/concepts/graph.h
r734 r786 141 141 142 142 /// This iterator goes through each node of the graph. 143 /// Its usage is quite simple, for example you can count the number143 /// Its usage is quite simple, for example, you can count the number 144 144 /// of nodes in a graph \c g of type \c %Graph like this: 145 145 ///\code … … 229 229 230 230 /// This iterator goes through each edge of the graph. 231 /// Its usage is quite simple, for example you can count the number231 /// Its usage is quite simple, for example, you can count the number 232 232 /// of edges in a graph \c g of type \c %Graph as follows: 233 233 ///\code … … 273 273 /// This iterator goes trough the incident undirected edges 274 274 /// of a certain node of a graph. 275 /// Its usage is quite simple, for example you can compute the275 /// Its usage is quite simple, for example, you can compute the 276 276 /// degree (i.e. the number of incident edges) of a node \c n 277 277 /// in a graph \c g of type \c %Graph as follows. … … 370 370 371 371 /// This iterator goes through each directed arc of the graph. 372 /// Its usage is quite simple, for example you can count the number372 /// Its usage is quite simple, for example, you can count the number 373 373 /// of arcs in a graph \c g of type \c %Graph as follows: 374 374 ///\code … … 414 414 /// This iterator goes trough the \e outgoing directed arcs of a 415 415 /// certain node of a graph. 416 /// Its usage is quite simple, for example you can count the number416 /// Its usage is quite simple, for example, you can count the number 417 417 /// of outgoing arcs of a node \c n 418 418 /// in a graph \c g of type \c %Graph as follows. … … 462 462 /// This iterator goes trough the \e incoming directed arcs of a 463 463 /// certain node of a graph. 464 /// Its usage is quite simple, for example you can count the number464 /// Its usage is quite simple, for example, you can count the number 465 465 /// of incoming arcs of a node \c n 466 466 /// in a graph \c g of type \c %Graph as follows. … … 588 588 /// Returns the first node of the given edge. 589 589 /// 590 /// Edges don't have source and target nodes, however methods590 /// Edges don't have source and target nodes, however, methods 591 591 /// u() and v() are used to query the two end-nodes of an edge. 592 592 /// The orientation of an edge that arises this way is called … … 601 601 /// Returns the second node of the given edge. 602 602 /// 603 /// Edges don't have source and target nodes, however methods603 /// Edges don't have source and target nodes, however, methods 604 604 /// u() and v() are used to query the two end-nodes of an edge. 605 605 /// The orientation of an edge that arises this way is called -
lemon/concepts/graph_components.h
r734 r786 19 19 ///\ingroup graph_concepts 20 20 ///\file 21 ///\brief The concept of graph components.21 ///\brief The concepts of graph components. 22 22 23 23 #ifndef LEMON_CONCEPTS_GRAPH_COMPONENTS_H -
lemon/concepts/path.h
r559 r785 19 19 ///\ingroup concept 20 20 ///\file 21 ///\brief Classes for representing paths in digraphs.21 ///\brief The concept of paths 22 22 /// 23 23 … … 39 39 /// A skeleton structure for representing directed paths in a 40 40 /// digraph. 41 /// In a sense, a path can be treated as a list of arcs. 42 /// LEMON path types just store this list. As a consequence, they cannot 43 /// enumerate the nodes on the path directly and a zero length path 44 /// cannot store its source node. 45 /// 46 /// The arcs of a path should be stored in the order of their directions, 47 /// i.e. the target node of each arc should be the same as the source 48 /// node of the next arc. This consistency could be checked using 49 /// \ref checkPath(). 50 /// The source and target nodes of a (consistent) path can be obtained 51 /// using \ref pathSource() and \ref pathTarget(). 52 /// 53 /// A path can be constructed from another path of any type using the 54 /// copy constructor or the assignment operator. 55 /// 41 56 /// \tparam GR The digraph type in which the path is. 42 ///43 /// In a sense, the path can be treated as a list of arcs. The44 /// lemon path type stores just this list. As a consequence it45 /// cannot enumerate the nodes in the path and the zero length46 /// paths cannot store the source.47 ///48 57 template <typename GR> 49 58 class Path { … … 60 69 Path() {} 61 70 62 /// \brief Template co nstructor71 /// \brief Template copy constructor 63 72 template <typename CPath> 64 73 Path(const CPath& cpath) {} 65 74 66 /// \brief Template assigment 75 /// \brief Template assigment operator 67 76 template <typename CPath> 68 77 Path& operator=(const CPath& cpath) { … … 71 80 } 72 81 73 /// Length of the path ie. the number of arcs in the path.82 /// Length of the path, i.e. the number of arcs on the path. 74 83 int length() const { return 0;} 75 84 … … 80 89 void clear() {} 81 90 82 /// \brief LEMON style iterator for path arcs91 /// \brief LEMON style iterator for enumerating the arcs of a path. 83 92 /// 84 /// This class is used to iterate on the arcs of the paths.93 /// LEMON style iterator class for enumerating the arcs of a path. 85 94 class ArcIt { 86 95 public: … … 89 98 /// Invalid constructor 90 99 ArcIt(Invalid) {} 91 /// Constructor for first arc100 /// Sets the iterator to the first arc of the given path 92 101 ArcIt(const Path &) {} 93 102 94 /// Conversion to Arc103 /// Conversion to \c Arc 95 104 operator Arc() const { return INVALID; } 96 105 … … 193 202 /// 194 203 /// A skeleton structure for path dumpers. The path dumpers are 195 /// the generalization of the paths. The path dumpers can 196 /// enumerate the arcs of the path wheter in forward or in 197 /// backward order. In most time these classes are not used 198 /// directly rather it used to assign a dumped class to a real 199 /// path type. 204 /// the generalization of the paths, they can enumerate the arcs 205 /// of the path either in forward or in backward order. 206 /// These classes are typically not used directly, they are rather 207 /// used to be assigned to a real path type. 200 208 /// 201 209 /// The main purpose of this concept is that the shortest path 202 /// algorithms can enumerate easily the arcs in reverse order. 203 /// If we would like to give back a real path from these 204 /// algorithms then we should create a temporarly path object. In 205 /// LEMON such algorithms gives back a path dumper what can 206 /// assigned to a real path and the dumpers can be implemented as 210 /// algorithms can enumerate the arcs easily in reverse order. 211 /// In LEMON, such algorithms give back a (reverse) path dumper that 212 /// can be assigned to a real path. The dumpers can be implemented as 207 213 /// an adaptor class to the predecessor map. 208 214 /// 209 215 /// \tparam GR The digraph type in which the path is. 210 ///211 /// The paths can be constructed from any path type by a212 /// template constructor or a template assignment operator.213 216 template <typename GR> 214 217 class PathDumper { … … 220 223 typedef typename Digraph::Arc Arc; 221 224 222 /// Length of the path ie. the number of arcs in the path.225 /// Length of the path, i.e. the number of arcs on the path. 223 226 int length() const { return 0;} 224 227 … … 228 231 /// \brief Forward or reverse dumping 229 232 /// 230 /// If the RevPathTag is defined and true then reverse dumping 231 /// is provided in the path dumper. In this case instead of the 232 /// ArcIt the RevArcIt iterator should be implemented in the 233 /// dumper. 233 /// If this tag is defined to be \c True, then reverse dumping 234 /// is provided in the path dumper. In this case, \c RevArcIt 235 /// iterator should be implemented instead of \c ArcIt iterator. 234 236 typedef False RevPathTag; 235 237 236 /// \brief LEMON style iterator for path arcs238 /// \brief LEMON style iterator for enumerating the arcs of a path. 237 239 /// 238 /// This class is used to iterate on the arcs of the paths.240 /// LEMON style iterator class for enumerating the arcs of a path. 239 241 class ArcIt { 240 242 public: … … 243 245 /// Invalid constructor 244 246 ArcIt(Invalid) {} 245 /// Constructor for first arc247 /// Sets the iterator to the first arc of the given path 246 248 ArcIt(const PathDumper&) {} 247 249 248 /// Conversion to Arc250 /// Conversion to \c Arc 249 251 operator Arc() const { return INVALID; } 250 252 … … 261 263 }; 262 264 263 /// \brief LEMON style iterator for path arcs 265 /// \brief LEMON style iterator for enumerating the arcs of a path 266 /// in reverse direction. 264 267 /// 265 /// This class is used to iterate on the arcs of the paths in266 /// reverse direction.268 /// LEMON style iterator class for enumerating the arcs of a path 269 /// in reverse direction. 267 270 class RevArcIt { 268 271 public: … … 271 274 /// Invalid constructor 272 275 RevArcIt(Invalid) {} 273 /// Constructor for first arc276 /// Sets the iterator to the last arc of the given path 274 277 RevArcIt(const PathDumper &) {} 275 278 276 /// Conversion to Arc279 /// Conversion to \c Arc 277 280 operator Arc() const { return INVALID; } 278 281 -
lemon/counter.h
r440 r786 213 213 /// 'Do nothing' version of Counter. 214 214 215 /// This class can be used in the same way as \ref Counter howeverit215 /// This class can be used in the same way as \ref Counter, but it 216 216 /// does not count at all and does not print report on destruction. 217 217 /// -
lemon/dfs.h
r787 r788 64 64 ///The type of the map that indicates which nodes are processed. 65 65 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 66 ///By default it is a NullMap.66 ///By default, it is a NullMap. 67 67 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 68 68 ///Instantiates a \c ProcessedMap. … … 779 779 ///The type of the map that indicates which nodes are processed. 780 780 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 781 ///By default it is a NullMap.781 ///By default, it is a NullMap. 782 782 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 783 783 ///Instantiates a ProcessedMap. -
lemon/dijkstra.h
r787 r788 133 133 ///The type of the map that indicates which nodes are processed. 134 134 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 135 ///By default it is a NullMap.135 ///By default, it is a NullMap. 136 136 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 137 137 ///Instantiates a \c ProcessedMap. … … 427 427 ///passed to the constructor of the cross reference and the cross 428 428 ///reference should be passed to the constructor of the heap). 429 ///However external heap and cross reference objects could also be429 ///However, external heap and cross reference objects could also be 430 430 ///passed to the algorithm using the \ref heap() function before 431 431 ///calling \ref run(Node) "run()" or \ref init(). … … 448 448 ///\ref named-templ-param "Named parameter" for setting 449 449 ///\c OperationTraits type. 450 /// For more information see \ref DijkstraDefaultOperationTraits.450 /// For more information, see \ref DijkstraDefaultOperationTraits. 451 451 template <class T> 452 452 struct SetOperationTraits … … 997 997 ///The type of the map that indicates which nodes are processed. 998 998 ///It must conform to the \ref concepts::WriteMap "WriteMap" concept. 999 ///By default it is a NullMap.999 ///By default, it is a NullMap. 1000 1000 typedef NullMap<typename Digraph::Node,bool> ProcessedMap; 1001 1001 ///Instantiates a ProcessedMap. -
lemon/gomory_hu.h
r713 r786 295 295 /// \pre \ref run() must be called before using this function. 296 296 template <typename CutMap> 297 Value minCutMap(const Node& s, ///<297 Value minCutMap(const Node& s, 298 298 const Node& t, 299 ///<300 299 CutMap& cutMap 301 ///<302 300 ) const { 303 301 Node sn = s, tn = t; … … 395 393 /// \endcode 396 394 /// does not necessarily give the same set of nodes. 397 /// However it is ensured that395 /// However, it is ensured that 398 396 /// \code 399 397 /// MinCutNodeIt(gomory, s, t, true); -
lemon/graph_to_eps.h
r617 r786 143 143 ///\param gr Reference to the graph to be printed. 144 144 ///\param ost Reference to the output stream. 145 ///By default it is <tt>std::cout</tt>.145 ///By default, it is <tt>std::cout</tt>. 146 146 ///\param pros If it is \c true, then the \c ostream referenced by \c os 147 147 ///will be explicitly deallocated by the destructor. … … 513 513 ///Turn on/off pre-scaling 514 514 515 ///By default graphToEps() rescales the whole image in order to avoid515 ///By default, graphToEps() rescales the whole image in order to avoid 516 516 ///very big or very small bounding boxes. 517 517 /// … … 1115 1115 ///\param g Reference to the graph to be printed. 1116 1116 ///\param os Reference to the output stream. 1117 ///By default it is <tt>std::cout</tt>.1117 ///By default, it is <tt>std::cout</tt>. 1118 1118 /// 1119 1119 ///This function also has a lot of … … 1127 1127 ///\endcode 1128 1128 /// 1129 ///For more detailed examples see the \ref graph_to_eps_demo.cc demo file.1129 ///For more detailed examples, see the \ref graph_to_eps_demo.cc demo file. 1130 1130 /// 1131 1131 ///\warning Don't forget to put the \ref GraphToEps::run() "run()" -
lemon/hypercube_graph.h
r787 r788 288 288 /// differ only on one position in the binary form. 289 289 /// This class is completely static and it needs constant memory space. 290 /// Thus you can neither add nor delete nodes or edges, however 290 /// Thus you can neither add nor delete nodes or edges, however, 291 291 /// the structure can be resized using resize(). 292 292 /// -
lemon/lgf_reader.h
r599 r786 428 428 ///\endcode 429 429 /// 430 /// By default the reader uses the first section in the file of the430 /// By default, the reader uses the first section in the file of the 431 431 /// proper type. If a section has an optional name, then it can be 432 432 /// selected for reading by giving an optional name parameter to the … … 2222 2222 /// whitespaces are trimmed from each processed string. 2223 2223 /// 2224 /// For example let's see a section, which contain several2224 /// For example, let's see a section, which contain several 2225 2225 /// integers, which should be inserted into a vector. 2226 2226 ///\code -
lemon/list_graph.h
r787 r788 401 401 /// 402 402 ///\note \c ArcIt and \c OutArcIt iterators referencing the changed 403 ///arc remain valid, however\c InArcIt iterators are invalidated.403 ///arc remain valid, but \c InArcIt iterators are invalidated. 404 404 /// 405 405 ///\warning This functionality cannot be used together with the Snapshot … … 413 413 /// 414 414 ///\note \c InArcIt iterators referencing the changed arc remain 415 ///valid, however\c ArcIt and \c OutArcIt iterators are invalidated.415 ///valid, but \c ArcIt and \c OutArcIt iterators are invalidated. 416 416 /// 417 417 ///\warning This functionality cannot be used together with the Snapshot … … 560 560 /// reversing, contracting, splitting arcs or nodes) cannot be 561 561 /// restored. These events invalidate the snapshot. 562 /// However the arcs and nodes that were added to the digraph after562 /// However, the arcs and nodes that were added to the digraph after 563 563 /// making the current snapshot can be removed without invalidating it. 564 564 class Snapshot { … … 1287 1287 /// 1288 1288 ///\note \c EdgeIt iterators referencing the changed edge remain 1289 ///valid, however\c ArcIt iterators referencing the changed edge and1289 ///valid, but \c ArcIt iterators referencing the changed edge and 1290 1290 ///all other iterators whose base node is the changed node are also 1291 1291 ///invalidated. … … 1372 1372 /// (e.g. changing the end-nodes of edges or contracting nodes) 1373 1373 /// cannot be restored. These events invalidate the snapshot. 1374 /// However the edges and nodes that were added to the graph after1374 /// However, the edges and nodes that were added to the graph after 1375 1375 /// making the current snapshot can be removed without invalidating it. 1376 1376 class Snapshot { -
lemon/lp_base.h
r746 r786 147 147 ///Iterator for iterate over the columns of an LP problem 148 148 149 /// Its usage is quite simple, for example you can count the number149 /// Its usage is quite simple, for example, you can count the number 150 150 /// of columns in an LP \c lp: 151 151 ///\code … … 242 242 ///Iterator for iterate over the rows of an LP problem 243 243 244 /// Its usage is quite simple, for example you can count the number244 /// Its usage is quite simple, for example, you can count the number 245 245 /// of rows in an LP \c lp: 246 246 ///\code -
lemon/maps.h
r726 r786 231 231 /// This map is essentially a wrapper for \c std::vector. It assigns 232 232 /// values to integer keys from the range <tt>[0..size-1]</tt>. 233 /// It can be used with some data structures, for example234 /// \c UnionFind, \c BinHeap, when the used items are small233 /// It can be used together with some data structures, e.g. 234 /// heap types and \c UnionFind, when the used items are small 235 235 /// integers. This map conforms to the \ref concepts::ReferenceMap 236 /// "ReferenceMap" concept. 236 /// "ReferenceMap" concept. 237 237 /// 238 238 /// The simplest way of using this map is through the rangeMap() … … 349 349 /// The name of this type also refers to this important usage. 350 350 /// 351 /// Apart form that this map can be used in many other cases since it351 /// Apart form that, this map can be used in many other cases since it 352 352 /// is based on \c std::map, which is a general associative container. 353 /// However keep in mind that it is usually not as efficient as other353 /// However, keep in mind that it is usually not as efficient as other 354 354 /// maps. 355 355 /// … … 1786 1786 /// The most important usage of it is storing certain nodes or arcs 1787 1787 /// that were marked \c true by an algorithm. 1788 /// For example it makes easier to store the nodes in the processing1788 /// For example, it makes easier to store the nodes in the processing 1789 1789 /// order of Dfs algorithm, as the following examples show. 1790 1790 /// \code … … 1801 1801 /// 1802 1802 /// \note LoggerBoolMap is just \ref concepts::WriteMap "writable", so 1803 /// it cannot be used when a readable map is needed, for example as1803 /// it cannot be used when a readable map is needed, for example, as 1804 1804 /// \c ReachedMap for \c Bfs, \c Dfs and \c Dijkstra algorithms. 1805 1805 /// … … 1923 1923 /// Otherwise consider to use \c IterableValueMap, which is more 1924 1924 /// suitable and more efficient for such cases. It provides iterators 1925 /// to traverse the items with the same associated value, however1925 /// to traverse the items with the same associated value, but 1926 1926 /// it does not have \c InverseMap. 1927 1927 /// … … 3467 3467 /// may provide alternative ways to modify the digraph. 3468 3468 /// The correct behavior of InDegMap is not guarantied if these additional 3469 /// features are used. For example the functions3469 /// features are used. For example, the functions 3470 3470 /// \ref ListDigraph::changeSource() "changeSource()", 3471 3471 /// \ref ListDigraph::changeTarget() "changeTarget()" and … … 3597 3597 /// may provide alternative ways to modify the digraph. 3598 3598 /// The correct behavior of OutDegMap is not guarantied if these additional 3599 /// features are used. For example the functions3599 /// features are used. For example, the functions 3600 3600 /// \ref ListDigraph::changeSource() "changeSource()", 3601 3601 /// \ref ListDigraph::changeTarget() "changeTarget()" and -
lemon/network_simplex.h
r755 r788 51 51 /// in LEMON for the minimum cost flow problem. 52 52 /// Moreover it supports both directions of the supply/demand inequality 53 /// constraints. For more information see \ref SupplyType.53 /// constraints. For more information, see \ref SupplyType. 54 54 /// 55 55 /// Most of the parameters of the problem (except for the digraph) … … 60 60 /// \tparam GR The digraph type the algorithm runs on. 61 61 /// \tparam V The value type used for flow amounts, capacity bounds 62 /// and supply values in the algorithm. By default it is \c int.62 /// and supply values in the algorithm. By default, it is \c int. 63 63 /// \tparam C The value type used for costs and potentials in the 64 /// algorithm. By default it is the same as \c V.64 /// algorithm. By default, it is the same as \c V. 65 65 /// 66 66 /// \warning Both value types must be signed and all input data must … … 69 69 /// \note %NetworkSimplex provides five different pivot rule 70 70 /// implementations, from which the most efficient one is used 71 /// by default. For more information see \ref PivotRule.71 /// by default. For more information, see \ref PivotRule. 72 72 template <typename GR, typename V = int, typename C = V> 73 73 class NetworkSimplex … … 125 125 /// implementations that significantly affect the running time 126 126 /// of the algorithm. 127 /// By default \ref BLOCK_SEARCH "Block Search" is used, which127 /// By default, \ref BLOCK_SEARCH "Block Search" is used, which 128 128 /// proved to be the most efficient and the most robust on various 129 129 /// test inputs according to our benchmark tests. 130 /// However another pivot rule can be selected using the \ref run()130 /// However, another pivot rule can be selected using the \ref run() 131 131 /// function with the proper parameter. 132 132 enum PivotRule { 133 133 134 /// The FirstEligible pivot rule.134 /// The \e First \e Eligible pivot rule. 135 135 /// The next eligible arc is selected in a wraparound fashion 136 136 /// in every iteration. 137 137 FIRST_ELIGIBLE, 138 138 139 /// The BestEligible pivot rule.139 /// The \e Best \e Eligible pivot rule. 140 140 /// The best eligible arc is selected in every iteration. 141 141 BEST_ELIGIBLE, 142 142 143 /// The BlockSearch pivot rule.143 /// The \e Block \e Search pivot rule. 144 144 /// A specified number of arcs are examined in every iteration 145 145 /// in a wraparound fashion and the best eligible arc is selected … … 147 147 BLOCK_SEARCH, 148 148 149 /// The Candidate List pivot rule.149 /// The \e Candidate \e List pivot rule. 150 150 /// In a major iteration a candidate list is built from eligible arcs 151 151 /// in a wraparound fashion and in the following minor iterations … … 153 153 CANDIDATE_LIST, 154 154 155 /// The Altering Candidate List pivot rule.155 /// The \e Altering \e Candidate \e List pivot rule. 156 156 /// It is a modified version of the Candidate List method. 157 157 /// It keeps only the several best eligible arcs from the former … … 813 813 /// type will be used. 814 814 /// 815 /// For more information see \ref SupplyType.815 /// For more information, see \ref SupplyType. 816 816 /// 817 817 /// \return <tt>(*this)</tt> … … 845 845 /// \ref reset() is called, thus only the modified parameters 846 846 /// have to be set again. See \ref reset() for examples. 847 /// However the underlying digraph must not be modified after this847 /// However, the underlying digraph must not be modified after this 848 848 /// class have been constructed, since it copies and extends the graph. 849 849 /// 850 850 /// \param pivot_rule The pivot rule that will be used during the 851 /// algorithm. For more information see \ref PivotRule.851 /// algorithm. For more information, see \ref PivotRule. 852 852 /// 853 853 /// \return \c INFEASIBLE if no feasible flow exists, … … 874 874 /// used, all the parameters given before are kept for the next 875 875 /// \ref run() call. 876 /// However the underlying digraph must not be modified after this876 /// However, the underlying digraph must not be modified after this 877 877 /// class have been constructed, since it copies and extends the graph. 878 878 /// -
lemon/preflow.h
r755 r788 266 266 /// able to automatically created by the algorithm (i.e. the 267 267 /// digraph and the maximum level should be passed to it). 268 /// However an external elevator object could also be passed to the268 /// However, an external elevator object could also be passed to the 269 269 /// algorithm with the \ref elevator(Elevator&) "elevator()" function 270 270 /// before calling \ref run() or \ref init(). -
lemon/time_measure.h
r584 r786 376 376 ///This function returns the number of stop() exections that is 377 377 ///necessary to really stop the timer. 378 ///For example the timer378 ///For example, the timer 379 379 ///is running if and only if the return value is \c true 380 380 ///(i.e. greater than -
lemon/unionfind.h
r559 r786 44 44 /// This is a very simple but efficient implementation, providing 45 45 /// only four methods: join (union), find, insert and size. 46 /// For more features see the \ref UnionFindEnum class.46 /// For more features, see the \ref UnionFindEnum class. 47 47 /// 48 48 /// It is primarily used in Kruskal algorithm for finding minimal
Note: See TracChangeset
for help on using the changeset viewer.