Changeset 776:f2994a2b10b2 in lemon-0.x
- Timestamp:
- 08/31/04 15:40:07 (21 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@1069
- Location:
- src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
src/hugo/bin_heap.h
r542 r776 34 34 * Ehhez nagyon fontos, hogy az atadott property map inicializalva legyen 35 35 * minden szobajovo kulcs ertekre, -1 -es ertekkel! 36 * Es ilyen esetben a kulcsokrol lekerdezheto az allapotuk a state metodussal: 36 * Es ilyen esetben a kulcsokrol lekerdezheto az allapotuk a state 37 metodussal: 37 38 * (nem jart meg a kupacban PRE_HEAP=-1, epp a kupacban van IN_HEAP=0, 38 39 * mar kikerult a kupacbol POST_HEAP=-2). -
src/hugo/dijkstra.h
r774 r776 243 243 for(OutEdgeIt e(*G,v); e!=INVALID; ++e) { 244 244 Node w=G->head(e); 245 246 245 switch(heap.state(w)) { 247 246 case HeapType::PRE_HEAP: -
src/hugo/mincostflows.h
r758 r776 117 117 total_length = 0; 118 118 119 FOR_EACH_LOC(typename Graph::EdgeIt, e, G){119 for(typename Graph::EdgeIt e=loopFirst(typename Graph::EdgeIt(), (G)); e!=INVALID; ++e){ 120 120 flow.set(e,0); 121 121 } 122 122 123 123 //Initialize the potential to zero 124 FOR_EACH_LOC(typename Graph::NodeIt, n, G){124 for(typename Graph::NodeIt n=loopFirst(typename Graph::NodeIt(), (G)); n!=INVALID; ++n){ 125 125 potential.set(n,0); 126 126 } … … 145 145 146 146 //We have to change the potential 147 FOR_EACH_LOC(typename ResGraphType::NodeIt, n, res_graph){ 147 //#define FOR_EACH_LOC(Ittype, e, g) for(Ittype e=loopFirst(Ittype(), (g)); (g).valid(e); (g).next(e)) 148 //FOR_EACH_LOC(typename ResGraphType::NodeIt, n, res_graph){ 149 for(typename ResGraphType::NodeIt n=loopFirst(typename ResGraphType::NodeIt(), (res_graph)); n!=INVALID; ++n){ 148 150 potential[n] += dijkstra.distMap()[n]; 149 151 } … … 196 198 Length mod_pot; 197 199 Length fl_e; 198 FOR_EACH_LOC(typename Graph::EdgeIt, e, G){ 200 //#define FOR_EACH_LOC(Ittype, e, g) for(Ittype e=loopFirst(Ittype(), (g)); (g).valid(e); (g).next(e)) 201 //FOR_EACH_LOC(typename Graph::EdgeIt, e, G){ 202 for(typename Graph::EdgeIt e=loopFirst(typename Graph::EdgeIt(), (G)); e!=INVALID; ++e){ 199 203 //C^{\Pi}_{i,j} 200 204 mod_pot = length[e]-potential[G.head(e)]+potential[G.tail(e)]; -
src/hugo/minlengthpaths.h
r759 r776 84 84 EdgeIntMap reversed(G); 85 85 86 FOR_EACH_LOC(typename Graph::EdgeIt, e, G){ 86 //FOR_EACH_LOC(typename Graph::EdgeIt, e, G){ 87 for(typename Graph::EdgeIt e=loopFirst(typename Graph::EdgeIt(), (G)); e!=INVALID; ++e){ 87 88 reversed[e] = mincost_flow.getFlow()[e]; 88 89 } … … 101 102 102 103 while (!reversed[e]){ 103 G.next(e);104 ++e; 104 105 } 105 106 n = G.head(e); -
src/test/dijkstra_heap_test.cc
r542 r776 57 57 58 58 EdgeIt e; 59 for(G.first(e); G.valid(e); G.next(e)) {59 for(G.first(e); e!=INVALID; ++e) { 60 60 Node u=G.tail(e); 61 61 Node v=G.head(e); … … 70 70 71 71 NodeIt v; 72 for(G.first(v); G.valid(v); G.next(v)) {72 for(G.first(v); v!=INVALID; ++v) { 73 73 if ( dijkstra_test.reached(v) ) { 74 74 Edge e=dijkstra_test.pred(v); … … 106 106 error2=0; 107 107 108 for(G.first(e); G.valid(e); G.next(e)) {108 for(G.first(e); e!=INVALID; ++e) { 109 109 Node u=G.tail(e); 110 110 Node v=G.head(e); … … 118 118 } 119 119 120 for(G.first(v); G.valid(v); G.next(v)) {120 for(G.first(v); v!=INVALID; ++v) { 121 121 if ( dijkstra_test2.reached(v) ) { 122 122 Edge e=dijkstra_test2.pred(v); -
src/test/dijkstra_test.cc
r774 r776 76 76 77 77 78 for(EdgeIt e(G); e ==INVALID; ++e) {78 for(EdgeIt e(G); e!=INVALID; ++e) { 79 79 Node u=G.tail(e); 80 80 Node v=G.head(e); … … 87 87 88 88 ///\bug This works only for integer lengths 89 for(NodeIt v(G); v ==INVALID; ++v)89 for(NodeIt v(G); v!=INVALID; ++v) 90 90 if ( dijkstra_test.reached(v) ) { 91 91 Edge e=dijkstra_test.pred(v);
Note: See TracChangeset
for help on using the changeset viewer.