UNPKG

@datastructures-js/priority-queue

Version:

A heap-based implementation of priority queue in javascript with typescript support.

23 lines (20 loc) 654 B
import { ICompare } from '@datastructures-js/heap'; export interface PriorityQueue<T> extends Iterable<T> { [Symbol.iterator](): Iterator<T, any, undefined>; size(): number; isEmpty(): boolean; front(): T | null; back(): T | null; enqueue(value: T): PriorityQueue<T>; push(value: T): PriorityQueue<T>; dequeue(): T | null; pop(): T | null; remove(cb: (value: T) => boolean): T[]; contains(cb: (value: T) => boolean): boolean; toArray(): T[]; clear(): void; } export const PriorityQueue: { new <T>(compare: ICompare<T>, values?: T[]): PriorityQueue<T>; fromArray<T>(values: T[], compare: ICompare<T>): PriorityQueue<T>; };