a book, drawn by Nib

Algorithms, drawn

Data structures and algorithms, from binary search upward: every idea drawn, every piece of code runnable a step at a time.

  1. How can 20 guesses find one number in a million?

    Binary search, drawn and playable: guess a number in a million in 20 tries, step through the code, flip the one character that breaks it, and see the overflow bug that hid in Java for nine years.

  2. What is dynamic programming, really?

    Watch the obvious Fibonacci program ask the same questions billions of times, then flip one switch and see the call tree collapse into a chain: dynamic programming, drawn and runnable.