|
ATLAS Offline Software
|
Go to the documentation of this file.
38 #ifndef ALGORITHM_BINOMIAL_HEAP_H
39 #define ALGORITHM_BINOMIAL_HEAP_H
73 #define BINOMIAL_HEAP_NULL ((void *) 0)
BinomialHeapValue binomial_heap_pop(BinomialHeap *heap)
Remove the first value from a binomial heap.
struct _BinomialHeap BinomialHeap
A binomial heap data structure.
BinomialHeapType
Heap type.
void * BinomialHeapValue
A value stored in a BinomialHeap.
int(* BinomialHeapCompareFunc)(BinomialHeapValue value1, BinomialHeapValue value2)
Type of function used to compare values in a binomial heap.
void binomial_heap_free(BinomialHeap *heap)
Destroy a binomial heap.
int binomial_heap_num_entries(BinomialHeap *heap)
Find the number of values stored in a binomial heap.
@ BINOMIAL_HEAP_TYPE_MIN
A minimum heap.
BinomialHeap * binomial_heap_new(BinomialHeapType heap_type, BinomialHeapCompareFunc compare_func)
Create a new BinomialHeap.
int binomial_heap_insert(BinomialHeap *heap, BinomialHeapValue value)
Insert a value into a binomial heap.
@ BINOMIAL_HEAP_TYPE_MAX
A maximum heap.