javascript-priority-queue
Version:
JavaScript implementation of PriorityQueue (using Min Heap or Max Heap)
26 lines (25 loc) • 783 B
TypeScript
/**
* Priority Queue using Heap
* Usage:
* const queue = new PriorityQueue() -> min heap
* const queue = new PriorityQueue("min") -> min heap
* const queue = new PriorityQueue("max") -> max heap
*
* queue.enqueue(SOME_ITEM, PRIORITY_NUMBER); // e.g. queue.enqueue("a", 1)
* queue.dequeue(); // e.g. returns "a"
* queue.peek(); // returns the current first item
* queue.toString(); // print the current state of the entire queue (NOT IN SORTED ORDER!)
* queue.size(); // number of items
*
*/
export default class {
private heap;
private type;
constructor(heapType: string);
enqueue(value: any, priority: number): void;
dequeue(): any;
toString(): string;
size(): number;
peek(): any;
private heapify;
}