@gabrielrufino/cube
Version:
Data structures made in Typescript
20 lines (19 loc) • 634 B
TypeScript
import type IMaxHeap from './IMaxHeap';
import type IMaxHeapOptions from './IMaxHeapOptions';
export default class MaxHeap<T = number> implements IMaxHeap<T> {
private _data;
constructor({ greaterThanOrEqualTo, inputs }?: IMaxHeapOptions<T>);
get data(): T[];
get size(): number;
get isEmpty(): boolean;
get max(): T | null;
insert(value: T): T;
extract(): T | null;
private readonly _greaterThanOrEqualTo;
private readonly _getLeftIndex;
private readonly _getRightIndex;
private readonly _getParentIndex;
private _siftUp;
private _siftDown;
private [Symbol.toPrimitive];
}