AlgoViz
★ Learn DSA by watching, not memorising

Algorithms you can see, then play.

Most people find data structures hard because they're invisible. Here, every algorithm moves — step by step, in plain English — and the moment it clicks, you get a problem to prove it.

14 concepts · 6 problems · no sign-up, ever

binary_search.run()
target = 44
3
8
12
17
23
31
44
56
68
79
88
95
The whole list is in play

Your learning trail

A path built for newbies — each stop unlocks the next. See the full map →

🔒
Linear Search
locked
🔒
Binary Search
locked
🔒
Two Pointers
locked
🔒
Hashing (Hash Set)
locked
🔒
Stack & Queue
locked
👀

Watch it move

Every step animates with a plain-English line telling you exactly what just happened — and why.

🎛️

Play with it

Pause, rewind, slow it down, or feed in your own numbers and re-run. It's a sandbox, not a slideshow.

🧩

Then prove it

See brute → best for real problems, then write your own solution in the in-browser editor.

All concepts

Linear Search

+40

Check each element one by one until you find the target. The O(n) baseline.

ArrayEasy

Binary Search

+50

Find a target in a sorted array by repeatedly halving the search space.

ArrayEasy

Two Pointers

+60

Find a pair summing to a target in a sorted array by converging two pointers.

ArrayEasy

Hashing (Hash Set)

+70

Store values in buckets by value % size for O(1) average lookup.

Grid / DPEasy

Stack & Queue

+60

LIFO vs FIFO: a stack pops the newest, a queue dequeues the oldest.

ArrayEasy

Linked List Traversal

+60

Follow next pointers from head to null — a pointer is a reference to a node.

ArrayEasy

Bubble Sort

+50

Sort by repeatedly swapping adjacent out-of-order pairs until settled.

ArrayEasy

Insertion Sort

+50

Grow a sorted prefix by inserting each next element into its correct spot.

ArrayEasy

Merge Sort

+90

Divide the array in half, sort each half, then merge them. O(n log n).

ArrayMedium

Recursion: Factorial

+60

See recursion as a call stack: calls push on the way down, pop on the way up.

RecursionEasy

Tree Traversal (In-order)

+80

In-order traversal of a BST (left → node → right) visits values in sorted order.

TreeMedium

DP: Climbing Stairs

+70

Count ways to climb n stairs (1 or 2 at a time) by filling a DP table.

Grid / DPEasy

Breadth-First Search

+80

Explore a graph level by level using a queue — nearest nodes first.

GraphMedium

Depth-First Search

+80

Explore a graph by going deep down one path before backtracking.

GraphMedium
Browse practice problems →