BinaryHeap
Basic binary heap tree using linked lists
Usage
var BinaryHeap = ;var heap = ; var a = 6 5 3 1 8 7 2 4; a; heap; while heaplength console;
By default it stores as a max-heap, if you pass truthy to the constructor though it will behave as a min-heap.
Methods
insert(obj, key)
-- obj can be any new or existing object, and key is any value that behaves sanely with>
or<
pop()
-- removes and returns the maximum or minimum object from the root of the heapremove(obj)
-- removes a previously inserted object from the heapprint()
-- mostly for debugging purposes prints a graphviz dot style digraph to confirm ordering
Members
length
-- number of objects currently in the heap