Algorithm Visualizations

Every page here runs real C++ and animates the actual execution — not a pre-recorded animation. Pick one, then run your own code the same way.

▶ Open DryRun

searching

Binary Search VisualizationLinear Search Visualization

sorting

Bubble Sort Step by StepSelection Sort VisualizationInsertion Sort VisualizationHow Merge Sort WorksQuick Sort VisualizationCounting Sort Visualization

arrays

The Two Pointers TechniqueThe Sliding Window AlgorithmPrefix Sum ExplainedKadane's AlgorithmTwo Sum, Properly ExplainedArray Rotation In Place

linked-lists

Reversing a Linked ListDetecting a Linked List CycleMerging Two Sorted Linked Lists

stacks

Valid Parentheses with a StackHow a Stack Actually WorksNext Greater Element with a Monotonic Stack

queues

How a Queue Actually Works

trees

Binary Tree TraversalsBinary Search TreesComputing the Height of a Binary TreeLevel Order Traversal

graphs

Breadth-First SearchDepth-First SearchDijkstra's Shortest Path AlgorithmCycle Detection in a Directed GraphTopological Sort

recursion

How Recursion Actually Works

dynamic-programming

Fibonacci with MemoizationClimbing StairsThe 0/1 Knapsack Problem