File pairing_queue.hpp#
-
namespace find_embedding
-
class min_heap_tag
- #include <pairing_queue.hpp>
-
class max_heap_tag
- #include <pairing_queue.hpp>
-
template<typename P, typename heap_tag = min_heap_tag>
class priority_node - #include <pairing_queue.hpp>
Public Functions
-
inline priority_node()#
-
inline bool operator<(const priority_node<P, heap_tag> &b) const#
-
inline priority_node()#
-
template<typename N>
class pairing_node : public N - #include <pairing_queue.hpp>
Public Functions
-
inline pairing_node()#
-
inline pairing_node<N> *merge_roots(pairing_node<N> *other)
the basic operation of the pairing queue — put
this
andother
into heap-order
-
inline pairing_node<N> *next_root()#
-
inline pairing_node<N> *merge_pairs()#
Private Functions
-
inline pairing_node<N> *merge_roots_unsafe(pairing_node<N> *other)#
the basic operation of the pairing queue — put
this
andother
into heap-order
-
inline pairing_node<N> *merge_roots_unchecked(pairing_node *other)#
merge_roots, assuming
other
is not null and thatval
<other->val
.may invalidate the internal data structure (see source for details)
-
inline pairing_node()#
-
template<typename N>
class pairing_queue - #include <pairing_queue.hpp>
-
class min_heap_tag