tree-multimap-typed
Version:
28 lines (27 loc) • 882 B
TypeScript
import type { SkipLinkedListOptions } from '../../types';
export declare class SkipListNode<K, V> {
key: K;
value: V;
forward: SkipListNode<K, V>[];
constructor(key: K, value: V, level: number);
}
export declare class SkipList<K, V> {
constructor(elements?: Iterable<[K, V]>, options?: SkipLinkedListOptions);
protected _head: SkipListNode<K, V>;
get head(): SkipListNode<K, V>;
protected _level: number;
get level(): number;
protected _maxLevel: number;
get maxLevel(): number;
protected _probability: number;
get probability(): number;
get first(): V | undefined;
get last(): V | undefined;
add(key: K, value: V): void;
get(key: K): V | undefined;
has(key: K): boolean;
delete(key: K): boolean;
higher(key: K): V | undefined;
lower(key: K): V | undefined;
protected _randomLevel(): number;
}