The picture is the data.
Every number you see is the real array at that instant — it cannot drift, cannot lie. Pick a visualization, scrub through it, watch the operation happen for real.
Arrays
The contiguous line — index, insert, delete, rotate, window.
Traverse an Array
introWalk every element left to right.
Insert into an Array
easyOpen a gap, then drop the value in.
Delete from an Array
easyRemove one, and watch the gap close.
Reverse an Array
easyTwo pointers walk inward, trading ends.
Rotate an Array
mediumShift every element left by k — with three reversals.
Dutch National Flag
mediumSort 0s, 1s and 2s in a single pass, three pointers.
Prefix Sum
easyTurn an array into running totals — in place.
Kadane's Algorithm
mediumFind the largest-sum contiguous subarray in one pass.
Sliding Window (Max Sum)
easySlide a fixed window to find the largest sum of k in a row.
Move Zeroes
easyPush every zero to the end, keeping order — in place.
Strings
Text is a sequence of characters — scan it, reverse it, test it.
Searching
Find a value or a pair — scan, halve the range, or converge.
Sorting
Bring order out of chaos — from simple swaps to merge & heap.
Bubble Sort
easyAdjacent swaps float the biggest value to the end each pass.
Selection Sort
easyFind the smallest, send it to the front, repeat.
Insertion Sort
easyGrow a sorted prefix; slide each new value back into place.
Merge Sort
mediumSplit to single elements, then merge halves through a buffer.
Quick Sort
mediumPartition around a pivot, then recurse on each side.
Heap Sort
hardBuild a max-heap in the array, then pull the max to the end, repeat.
Counting Sort
mediumTally each value, then place them all in order — no comparisons.
Radix Sort
hardStably sort by each digit, least-significant first.
Stacks & Queues
Order of arrival — last in first out, or first in first out.
Stack — Push & Pop
introLast in, first out — everything happens at the top.
Queue — Enqueue & Dequeue
introFirst in, first out — join at the back, leave from the front.
Monotonic Stack — Next Greater
hardOne pass, one stack: find each value’s next greater neighbour.
Linked Lists
Nodes joined by pointers — rewire instead of shifting.
Traverse a Linked List
introFollow next pointers from head to ∅.
Insert into a Linked List
easyRewire two pointers — nothing shifts.
Delete from a Linked List
easyPoint past the node — it simply drops out of the chain.
Reverse a Linked List
mediumMove each node, one at a time, to the front of a new list.
Hashing
Turn a key into a slot — and handle the collisions.
Trees
Branching structure — search trees, traversals and heaps.
BST — Insert
easySmaller keys go left, larger go right — every key finds one path.
BST — Search
easyOne comparison per level throws away half the tree.
In-order Traversal
easyLeft, node, right — and the keys come out sorted.
BST — Delete
hardLeaf, one child, or two — the third case needs a successor.
Build a Max-Heap
mediumSift every parent down until each one outranks its children.
Heap — Extract Max
mediumTake the root, move the last node up, and sink it back down.
Graphs
A web of nodes and edges — traverse it, order it, find the cheapest way.
Breadth-First Search
mediumExplore ring by ring, using a queue.
Depth-First Search
mediumFollow one path as deep as it goes, then back up.
Topological Sort
mediumOrder tasks so every arrow points forward.
Dijkstra’s Shortest Path
hardAlways expand the closest unsettled node.
Minimum Spanning Tree (Kruskal)
hardTake the cheapest edge that doesn’t close a cycle.
Recursion & DP
Branch and backtrack — then stop repeating yourself with a table.
Recursion — Fibonacci Call Tree
mediumWatch the same subproblem get solved again and again.
Backtracking — All Subsets
mediumEvery element: take it or leave it. Each path spells a subset.
Backtracking — N-Queens
hardPlace a queen per row; retreat the moment it cannot work.
DP — Fibonacci Table
easyThe same answer in n steps instead of 2ⁿ calls.
DP — Coin Change
mediumFewest coins for every amount up to the target.
DP — Longest Increasing Subsequence
mediumFor each element, the best chain that ends there.
DP — Edit Distance
hardFewest insert / delete / replace steps between two words.