OpenLabs handbook

Algorithms Visual Handbook

An algorithm is a system of parts. Watch the items move.

A stack is a box with things in it; a queue is a belt with a policy; a sort is a load changing places. Every model here runs, and the answer comes out of parts moving — never out of a script.

Roadmap

The order in which the concepts hold each other up. The interactive map is not drawn yet — drawing the path before walking it would be a promise, so the phases are listed plainly instead.

  1. 01 What holds the data Stack, queue, table: the boxes everything else is built on.
  2. 02 One pass at a time Evaluation and traversal, as items travelling between parts.
  3. 03 Sorting The same load, changing places — and what each swap costs.
  4. 04 Greedy Deciding with what is in front of you, and when that is enough.
  5. 05 Dynamic programming A table that remembers, so the same work is never done twice.

Articles and labs

Each phase pairs prose with a model. The article says what is true; the lab is the thing running, and you can break it.

01 What holds the data

Stack, queue, table: the boxes everything else is built on.

Articles

Labs

  • A queue, and what fills it coming

02 One pass at a time

Evaluation and traversal, as items travelling between parts.

Articles

  • Postfix needs no parentheses coming

Labs

03 Sorting

The same load, changing places — and what each swap costs.

Articles

  • What a swap costs coming

Labs

  • Sorting, swap by swap coming

04 Greedy

Deciding with what is in front of you, and when that is enough.

Articles

  • When greedy is right coming

Labs

  • Greedy, and the case it misses coming

05 Dynamic programming

A table that remembers, so the same work is never done twice.

Articles

  • The table that remembers coming

Labs

  • The table that remembers coming

Handbook assessment

The cumulative assessment has not been authored yet. Available labs and articles remain open for study.