AlgoPrecision

Hashing Visualizer

Hash Tables

Watch keys map into buckets with modulo hashing, collisions, chain traversal, and live average versus worst-case complexity.

Average O(1), worst O(n)
bucket = abs(key) % 7
Bucket 0
empty
Bucket 1
empty
Bucket 2
empty
Bucket 3
empty
Bucket 4
empty
Bucket 5
empty
Bucket 6
empty

Time

Average O(1), worst O(n)

Space

O(n)

Step Note

Create 7 empty buckets.

Details
function insertAll(keys: number[], bucketCount: number) {
  const buckets = createEmptyBuckets(bucketCount)
  for (const key of keys) {
    const bucket = Math.abs(key) % bucketCount
    buckets[bucket].push({ key, value: `value-${key}` })
  }
  return buckets
}