9 #ifndef ADOBE_ALGORITHM_HEAP_HPP
10 #define ADOBE_ALGORITHM_HEAP_HPP
14 #include <boost/range/begin.hpp>
15 #include <boost/range/end.hpp>
16 #include <boost/bind.hpp>
41 template <
class RandomAccessRange>
52 template <
class RandomAccessIterator,
class Compare>
53 inline void push_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp)
63 template <
class RandomAccessRange,
class Compare>
64 inline void push_heap(RandomAccessRange& range, Compare comp)
74 template <
class RandomAccessRange>
85 template <
class RandomAccessIterator,
class Compare>
86 inline void pop_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp)
96 template <
class RandomAccessRange,
class Compare>
97 inline void pop_heap(RandomAccessRange& range, Compare comp)
107 template <
class RandomAccessRange>
118 template <
class RandomAccessIterator,
class Compare>
119 inline void make_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp)
129 template <
class RandomAccessRange,
class Compare>
130 inline void make_heap(RandomAccessRange& range, Compare comp)
140 template <
class RandomAccessRange>
151 template <
class RandomAccessIterator,
class Compare>
152 inline void sort_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp)
162 template <
class RandomAccessRange,
class Compare>
163 inline void sort_heap(RandomAccessRange& range, Compare comp)