NVBIO
|
Namespaces | |
interval_heap_internal | |
Functions | |
template<typename Iterator , typename Compare > | |
void | make_interval_heap (Iterator first, Iterator last, Compare compare) |
Moves elements in [first,last) to form an interval heap. More... | |
template<typename Iterator , typename Compare = std::less<typename std::iterator_traits<Iterator>::value_type>> | |
void | push_interval_heap (Iterator first, Iterator last, Compare compare) |
Expands the interval heap to include the element at last-1. More... | |
template<typename Iterator , typename Compare > | |
void | update_interval_heap (Iterator first, Iterator last, typename std::iterator_traits< Iterator >::difference_type index, Compare compare) |
Restores the interval-heap property if one element violates it. More... | |
template<typename Iterator , typename Compare > | |
void | sort_interval_heap (Iterator first, Iterator last, Compare compare) |
Sorts an interval heap in ascending order. More... | |
template<typename Iterator , typename Compare > | |
Iterator | is_interval_heap_until (Iterator first, Iterator last, Compare compare) |
Finds the largest subrange that qualifies as an interval heap. More... | |
template<typename Iterator , typename Compare > | |
bool | is_interval_heap (Iterator first, Iterator last, Compare compare) |
Checks whether the range is an interval heap. More... | |
template<typename Iterator , typename Compare > | |
void | pop_interval_heap_min (Iterator first, Iterator last, Compare compare) |
Moves a minimal element to the back of the range for popping. More... | |
template<typename Iterator , typename Compare > | |
void | pop_interval_heap_max (Iterator first, Iterator last, Compare compare) |
Moves a maximal element to the back of the range for popping. More... | |
template<typename Iterator , typename Compare > | |
void | pop_interval_heap (Iterator first, Iterator last, typename std::iterator_traits< Iterator >::difference_type index, Compare compare) |
Moves an element to the back of the range for popping. More... | |
bool boost::heap::is_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Checks whether the range is an interval heap.
Checks whether the range is a valid interval heap.
Definition at line 309 of file interval_heap.hpp.
Iterator boost::heap::is_interval_heap_until | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Finds the largest subrange that qualifies as an interval heap.
Finds the largest subrange that forms a valid interval heap.
Definition at line 271 of file interval_heap.hpp.
void boost::heap::make_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Moves elements in [first,last) to form an interval heap.
This function moves elements in a range to from an interval-heap.
first,last | A range of random-access iterators. |
compare | A comparison object. |
Definition at line 327 of file interval_heap.hpp.
void boost::heap::pop_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
typename std::iterator_traits< Iterator >::difference_type | index, | ||
Compare | compare | ||
) |
Moves an element to the back of the range for popping.
This function moves a specified element to the end of the range of iterators. This is typically done so that the element can be efficiently removed (by pop_back, for example).
first,last | A range of random-access iterators. |
index | The offset, from first, of the element to be removed. |
compare | A comparison object. |
Definition at line 171 of file interval_heap.hpp.
void boost::heap::pop_interval_heap_max | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Moves a maximal element to the back of the range for popping.
This function moves a maximal element to the end of the range of iterators. This is typically done so that the element can be efficiently removed (by pop_back, for example), but can also be used to sort the range in ascending order.
first,last | A range of random-access iterators. |
compare | A comparison object. |
Definition at line 230 of file interval_heap.hpp.
void boost::heap::pop_interval_heap_min | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Moves a minimal element to the back of the range for popping.
This function moves a minimal element to the end of the range of iterators. This is typically done so that the element can be efficiently removed (by pop_back, for example), but can also be used to sort the range in descending order.
first,last | A range of random-access iterators. |
compare | A comparison object. |
Definition at line 201 of file interval_heap.hpp.
void boost::heap::push_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Expands the interval heap to include the element at last-1.
This function expands an interval heap from [ first, last - 1) to [ first, last), maintaining the interval-heap property. This is typically used to add a new element to the interval heap.
first,last | A range of random-access iterators. |
compare | A comparison object. |
Definition at line 150 of file interval_heap.hpp.
void boost::heap::sort_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
Compare | compare | ||
) |
Sorts an interval heap in ascending order.
This function takes an interval heap and sorts its elements in ascending order.
first,last | A range of random-access iterators. |
compare | A comparison object. |
Definition at line 259 of file interval_heap.hpp.
void boost::heap::update_interval_heap | ( | Iterator | first, |
Iterator | last, | ||
typename std::iterator_traits< Iterator >::difference_type | index, | ||
Compare | compare | ||
) |
Restores the interval-heap property if one element violates it.
This function restores the interval-heap property violated by the specified element.
first,last | A range of random-access iterators. |
index | The offset, from first, of the offending element. |
compare | A comparison object. |
Definition at line 125 of file interval_heap.hpp.