Changeset 1064:40bbb450143e in lemon
- Timestamp:
- 07/13/11 14:40:05 (12 years ago)
- Branch:
- 1.1
- Parents:
- 1054:632a72b27123 (diff), 1063:0dba9b96550a (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Phase:
- public
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/Makefile.am
r913 r1064 60 60 lemon/bfs.h \ 61 61 lemon/bin_heap.h \ 62 lemon/bucket_heap.h \ 62 63 lemon/cbc.h \ 63 64 lemon/circulation.h \ … … 77 78 lemon/error.h \ 78 79 lemon/euler.h \ 80 lemon/fib_heap.h \ 79 81 lemon/full_graph.h \ 80 82 lemon/glpk.h \ … … 99 101 lemon/path.h \ 100 102 lemon/preflow.h \ 103 lemon/radix_heap.h \ 101 104 lemon/radix_sort.h \ 102 105 lemon/random.h \ -
lemon/Makefile.am
r728 r1064 93 93 lemon/lp_base.h \ 94 94 lemon/lp_skeleton.h \ 95 lemon/list_graph.h \96 95 lemon/maps.h \ 97 96 lemon/matching.h \ -
lemon/bin_heap.h
r912 r1064 34 34 ///\brief A Binary Heap implementation. 35 35 /// 36 ///This class implements the \e binary \e heap data structure. 37 /// 36 ///This class implements the \e binary \e heap data structure. 37 /// 38 38 ///A \e heap is a data structure for storing items with specified values 39 39 ///called \e priorities in such a way that finding the item with minimum 40 ///priority is efficient. \c C ompspecifies the ordering of the priorities.40 ///priority is efficient. \c CMP specifies the ordering of the priorities. 41 41 ///In a heap one can change the priority of an item, add or erase an 42 42 ///item, etc. … … 45 45 ///\tparam IM A read and writable item map with int values, used internally 46 46 ///to handle the cross references. 47 ///\tparam C ompA functor class for the ordering of the priorities.47 ///\tparam CMP A functor class for the ordering of the priorities. 48 48 ///The default is \c std::less<PR>. 49 49 /// 50 50 ///\sa FibHeap 51 51 ///\sa Dijkstra 52 template <typename PR, typename IM, typename C omp= std::less<PR> >52 template <typename PR, typename IM, typename CMP = std::less<PR> > 53 53 class BinHeap { 54 54 … … 63 63 typedef std::pair<Item,Prio> Pair; 64 64 ///\e 65 typedef C ompCompare;65 typedef CMP Compare; 66 66 67 67 /// \brief Type to represent the items states. -
lemon/bits/map_extender.h
r913 r1064 50 50 typedef typename Parent::ConstReference ConstReference; 51 51 52 typedef typename Parent::ReferenceMapTag ReferenceMapTag; 53 52 54 class MapIt; 53 55 class ConstMapIt; … … 192 194 typedef typename Parent::ConstReference ConstReference; 193 195 196 typedef typename Parent::ReferenceMapTag ReferenceMapTag; 197 194 198 class MapIt; 195 199 class ConstMapIt; -
lemon/concepts/maps.h
r912 r1064 183 183 template<typename _ReferenceMap> 184 184 struct Constraints { 185 void constraints() { 185 typename enable_if<typename _ReferenceMap::ReferenceMapTag, void>::type 186 constraints() { 186 187 checkConcept<ReadWriteMap<K, T>, _ReferenceMap >(); 187 188 ref = m[key]; -
test/heap_test.cc
r912 r1064 32 32 33 33 #include <lemon/bin_heap.h> 34 #include <lemon/fib_heap.h> 35 #include <lemon/radix_heap.h> 36 #include <lemon/bucket_heap.h> 34 37 35 38 #include "test_tools.h" … … 184 187 } 185 188 189 { 190 typedef FibHeap<Prio, ItemIntMap> IntHeap; 191 checkConcept<Heap<Prio, ItemIntMap>, IntHeap>(); 192 heapSortTest<IntHeap>(); 193 heapIncreaseTest<IntHeap>(); 194 195 typedef FibHeap<Prio, IntNodeMap > NodeHeap; 196 checkConcept<Heap<Prio, IntNodeMap >, NodeHeap>(); 197 dijkstraHeapTest<NodeHeap>(digraph, length, source); 198 } 199 200 { 201 typedef RadixHeap<ItemIntMap> IntHeap; 202 checkConcept<Heap<Prio, ItemIntMap>, IntHeap>(); 203 heapSortTest<IntHeap>(); 204 heapIncreaseTest<IntHeap>(); 205 206 typedef RadixHeap<IntNodeMap > NodeHeap; 207 checkConcept<Heap<Prio, IntNodeMap >, NodeHeap>(); 208 dijkstraHeapTest<NodeHeap>(digraph, length, source); 209 } 210 211 { 212 typedef BucketHeap<ItemIntMap> IntHeap; 213 checkConcept<Heap<Prio, ItemIntMap>, IntHeap>(); 214 heapSortTest<IntHeap>(); 215 heapIncreaseTest<IntHeap>(); 216 217 typedef BucketHeap<IntNodeMap > NodeHeap; 218 checkConcept<Heap<Prio, IntNodeMap >, NodeHeap>(); 219 dijkstraHeapTest<NodeHeap>(digraph, length, source); 220 } 221 222 186 223 return 0; 187 224 }
Note: See TracChangeset
for help on using the changeset viewer.