Vismo · Create · Library · Topics · Guides · Pricing

Hash tables: a formula decides where each key lives

Seven buckets receive keys according to key mod 7, with collisions stacked as chains beneath each bucket. A lookup for the key 23 jumps directly to bucket 2, illustrating how hashing narrows the search space instantly. The animation highlights why insert and lookup operations run in average O(1) time, making it useful for students learning data structures, hash function design, and collision resolution strategies in computer science courses.

16:9 · every frame verified for overlaps, spacing and edges before rendering

The prompt that made it

Keys are placed in seven buckets by key mod 7, collisions are chained below the bucket, and a lookup of 23 goes straight to bucket 2; average O(1) insert and lookup.

Make your own version

Make the next one in this series

Related animations

Minimum spanning tree with Kruskal's algorithm
Minimum spanning tree with Kruskal's algorithm

A weighted graph is processed by sorting all edges from cheapest to most expensive, adding each one only if it…

Binary search tree: smaller left, larger right
Binary search tree: smaller left, larger right

Values 50, 30, 70, 20, 40, 60, 80, and 35 are inserted one at a time into a binary search tree, with each comp…

Big-O: how running time grows with the input
Big-O: how running time grows with the input

This animation plots O(1), O(log n), O(n), O(n log n), O(n^2), and O(2^n) on shared axes, showing how each cur…

Linear search vs binary search: count the comparisons
Linear search vs binary search: count the comparisons

This animation compares two ways to find the value 51 in a sorted list of 16 numbers. Linear search checks eac…

Quicksort: pick a pivot, partition, recurse
Quicksort: pick a pivot, partition, recurse

This animation walks through the Lomuto partition method used in quicksort, choosing the last element as pivot…

Merge sort: split, then merge sorted halves
Merge sort: split, then merge sorted halves

An array of eight values is recursively divided into halves until single elements remain, then pairs are merge…