Skip to content

Interactive DSA labs

Learn data structures by watching them change.

Each lab runs real code one line at a time and draws exactly what that line does to memory: which pointer moves, which node is created, what becomes garbage.

Topics

  1. 01Graph Representation LabBuild the same graph as an edge list, an adjacency matrix and an adjacency list, and see what each one costs to store and to query.Open lab →
  2. 02Heap LabWatch a min heap and a max heap live in one array: insert with sift-up, delete the root with sift-down, and see why heapify is O(n).Open lab →
  3. 03Linked List LabStep through singly and doubly linked list operations line by line and watch exactly which pointer each line of Python changes.Open lab →
  4. 04Dijkstra's Algorithm LabWatch Dijkstra find the shortest path from one vertex to every other: the priority queue, the distance table and each edge relaxation, one step at a time.Open lab →
  5. 05Binary Search Tree LabCode a BST from scratch: insert, search and delete, the three depth-first traversals, and the max height of the tree.Open lab →
  6. 06Trie LabStore words letter by letter in a prefix tree. Step through insert, search and prefix lookup, then match words with wildcards.Open lab →
  7. 07Binary Numbers LabSee how a number becomes binary: divide by two and read the remainders, place values, converting back, and the bit operators that do it fast.Open lab →
  8. 08More topics on the way.