Common Lisp Package: FIB-HEAP

README:

FUNCTION

Public

EMPTY-P (HEAP)

Return NIL if HEAP is empty, otherwise the minnimal node.

INSERT (HEAP KEY DATA)

Insert a new node with KEY and associated DATA item into the HEAP root-list. No consolidation is done at this time.

MELD (HEAP-A HEAP-B)

Melds HEAP-A and HEAP-B into a new heap and returns it. HEAP-A and HEAP-B will be empty after this operation but may be used further.

Undocumented

CLEAR-HEAP (HEAP)

DECREASE-KEY (HEAP NODE KEY)

EXTRACT-MIN (HEAP)

EXTRACT-NODE (HEAP NODE)

PEEK-MIN (HEAP)

Private

CUT

Remove X from the child list of Y.

MAKE-NODE (KEY DATA)

Return a new heap node with KEY and DATA as key/data items and set the cycle list accordingly.

NODE-CHILD (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-DATA (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-DEGREE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-KEY (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-LEFT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-MARK (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-PARENT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

NODE-RIGHT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SPLICE-LISTS

Splice two circular lists together

Undocumented

%MAKE-NODE (KEY DATA)

CASCADING-CUT

CONSOLIDATE

COPY-NODE (INSTANCE)

SETFNODE-CHILD (NEW-VALUE INSTANCE)

SETFNODE-DATA (NEW-VALUE INSTANCE)

SETFNODE-DEGREE (NEW-VALUE INSTANCE)

SETFNODE-KEY (NEW-VALUE INSTANCE)

SETFNODE-LEFT (NEW-VALUE INSTANCE)

SETFNODE-MARK (NEW-VALUE INSTANCE)

NODE-P (OBJECT)

SETFNODE-PARENT (NEW-VALUE INSTANCE)

SETFNODE-RIGHT (NEW-VALUE INSTANCE)

SLOT-ACCESSOR

Public

Undocumented

HEAP-SIZE (OBJECT)

SETFHEAP-SIZE (NEW-VALUE OBJECT)

Private

Undocumented

MIN-NODE (OBJECT)

SETFMIN-NODE (NEW-VALUE OBJECT)

CLASS

Public

Undocumented

FIB-HEAP

Private

Undocumented

NODE