@gabrielrufino/cube
Version:
Data structures made in Typescript
20 lines (19 loc) • 940 B
TypeScript
import type IHashTableSeparateChaining from './IHashTableSeparateChaining';
import type IHashTableSeparateChainingData from './IHashTableSeparateChainingData';
import type IHashTableSeparateChainingInputs from './IHashTableSeparateChainingInputs';
import HashTableSeparateChainingElement from './HashTableSeparateChainingElement';
export default class HashTableSeparateChaining<T = number> implements IHashTableSeparateChaining<T> {
private _data;
readonly maxSize: number;
constructor(inputs?: Readonly<IHashTableSeparateChainingInputs<T>>, { maxSize }?: {
maxSize: number;
});
get data(): IHashTableSeparateChainingData<T>;
get size(): number;
put(key: string, value: T): T;
get(key: string): HashTableSeparateChainingElement<T> | null;
remove(key: string): HashTableSeparateChainingElement<T> | null;
private _getLinkedListByKey;
private _hashCode;
private [Symbol.toPrimitive];
}