Hash table implementation.
yarn add @klippersubs/hashtableimportHashTable,{hashString}from'@klippersubs/hashtable';constht=newHashTable(hashString);ht.set('Alice','+7 987 654‑32‑10');ht.set('Bob','+81 987 654‑32‑10');ht.set('Alice','+81 012 345‑67‑89');ht.delete('Bob');console.log(ht.get('Alice'));// → '+81 012 345‑67‑89'console.log(ht.get('Bob'));// → undefinedconsole.log(ht.has('Bob'));// → falseimport{StringTable}from'@klippersubs/hashtable';constst=newStringTable();st.set('Alice','+7 987 654‑32‑10');st.set('Bob','+81 987 654‑32‑10');st.set('Alice','+81 012 345‑67‑89');st.delete('Bob');console.log(st.get('Alice'));// → '+81 012 345‑67‑89'console.log(st.get('Bob'));// → undefinedconsole.log(st.has('Bob'));// → falseCallback type for calculating a hash of key.
Generic params:
Key— key type.
Params:
key: Key— a key to calculate hash.capacity: number— hash table capacity.
Return value:
number— hash.
Calculates a hash of string key.
Params:
key: string— a key to calculate hash.capacity: number— hash table capacity.
Return value:
number— hash.
Hash table class.
Generic params:
Key— key type.Value— value type.
Params:
hash: Hash<Key>— hash function.capacity: number = 8— capacity of the hash table.
Sets key–value pair.
Params:
key: Key.value: Value.
Return value:
this.
Returns value of a key–value pair.
Params:
key: Key.
Return value:
Value.
Checks if key—value pair exists.
Params:
key: Key.
Return value:
boolean.
Deletes key—value pair.
Params:
key: Key.
Return value:
this.
Specialized hash table with string keys.
Generic params:
Value— value type.
Params:
capacity: number = 8— capacity of the hash table.
MIT