UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

98 lines 1.86 kB
export default BinaryHeap; /** * Min-Heap implementation with a score function. * The data structure is a binary heap where elements are removed in order defined by scoring function * @template T */ declare class BinaryHeap<T> { /** * @template T * @param {function(el:T):number} scoreFunction * @constructor */ constructor(scoreFunction: any); /** * @private * @type {T[]} */ private data; /** * @private * @type {number} */ private length; /** * * @type {function(T): number} */ scoreFunction: (arg0: T_1) => number; /** * @private * @param {number} pos */ private bubbleUp; /** * @private * @param {number} pos */ private bubbleDown; /** * * @return {T} */ pop(): T; /** * * @returns {T|undefined} */ peek(): T | undefined; /** * * @param {T} node * @returns {boolean} */ delete(node: T): boolean; /** * NOTE: Unsafe method, use at your own risk * @param {number} i */ deleteByIndex(i: number): void; /** * Remove all the data from the heap */ clear(): void; /** * * @param {T} node * @returns {boolean} */ contains(node: T): boolean; /** * * @returns {boolean} */ isEmpty(): boolean; /** * * @returns {number} */ size(): number; /** * * @param {T} node * @returns {boolean} false if element is not found, true otherwise */ updateElementScore(node: T): boolean; /** * * @param {T} el */ push(el: T): void; /** * Useful for type checks * @readonly * @type {boolean} */ readonly isBinaryHeap: boolean; } //# sourceMappingURL=BinaryHeap.d.ts.map