Changeset 217:fc549fac0dd0 in lemon-0.x for src/work/jacint/dijkstra.h
- Timestamp:
- 03/20/04 17:13:19 (19 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@312
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/work/jacint/dijkstra.h
r211 r217 46 46 typename Graph::NodeMap<Edge> predecessor; 47 47 typename Graph::NodeMap<T> distance; 48 //FIXME: 48 49 typename Graph::NodeMap<bool> reach; 50 //typename Graph::NodeMap<int> reach; 49 51 50 52 public : … … 66 68 } 67 69 70 //FIXME: 68 71 typename Graph::NodeMap<bool> scanned(G,false); 72 //typename Graph::NodeMap<int> scanned(G,false); 69 73 typename Graph::NodeMap<int> heap_map(G,-1); 70 74 … … 77 81 78 82 Node v=heap.top(); 79 T oldvalue=heap .get(v);83 T oldvalue=heap[v]; 80 84 heap.pop(); 81 85 distance.set(v, oldvalue); … … 91 95 heap.push(w,oldvalue+length[e]); 92 96 predecessor.set(w,e); 93 } else if ( oldvalue+length[e] < heap .get(w)) {97 } else if ( oldvalue+length[e] < heap[w] ) { 94 98 predecessor.set(w,e); 95 99 heap.decrease(w, oldvalue+length[e]); … … 98 102 } 99 103 } 100 } 104 } 101 105 102 103 106 T dist(Node v) { 104 107 return distance[v]; 105 108 } 106 107 109 108 110 Edge pred(Node v) { … … 110 112 } 111 113 112 113 114 bool reached(Node v) { 114 115 return reach[v];
Note: See TracChangeset
for help on using the changeset viewer.