FH_MAKEKEYHEAP(3)

NAME
fh_makekeyheap - make a Fibonacci key Heap

SYNOPSIS
#include <fib.h>

struct fibheap *
fh_makekeyheap(void)

struct fibheap_el *
fh_insertkey(struct fibheap *heap, int key, void *data)

int
fh_minkey(struct fibheap *heap)

void *
fh_replacekey(struct fibheap *heap, struct fibheap_el *elem, int key)

void *
fh_replacekeydata(struct fibheap *heap, struct fibheap_el *elem, int key, void *data)

DESCRIPTION
The fh_makekeyheap function makes a Fibonacci heap which does ordering based on an integer key that is given in addition to the data. This menthod is useful so that you can eliminate the need to call a comparision function to order the data in the heap.

The pointer to the structure fibheap returned by fh_makekeyheap is an opaque structure. The the pointer can only be passed to other functions in the libfib library.

The fh_insertkey function inserts the data element into the heap with a value of key. The pointer returned can be used in calls to functions like fh_delete(3) to delete the key from the heap before it gets extracted via fh_extractmin(3).

RETURN VALUES
The fh_makekeyheap function returns a pointer to a heap structure used to insert and extract data elements.

The fh_insertkey functions returns a pointer to a heap element structure which can be used to manimulate that data element in the heap.

The fh_minkey function returns the integer key of the data at the top of the heap. If you would like to view the data, see fh_min(3).

SEE ALSO
fh_extractmin(3)

AUTHORS
This library and man page was writen by John-Mark Gurney <gurney_j@efn.org>.

BUGS
A key heap does not provide a way for handling key collitions and deffering decission to a user provided function to resolve colissions.