Data Structures and Algorithms
The guiding question
Why can the same problem get orders of magnitude faster just by organizing the data differently?
Episodes
- 1Arrays and Linked Lists: Contiguous vs. PointersComing soon
- 2Hash Tables: Trading Space for TimeComing soon
- 3Bloom Filters: “Have I Seen This?” in Tiny MemoryPublished
- 4Binary Search Trees and Balanced TreesComing soon
- 5B-Trees and B+ Trees: Database IndexesComing soon
- 6Skip Lists: Coin Flips Instead of RotationsComing soon
- 7Heaps and Priority QueuesComing soon
- 8LSM Trees: Turning Random Writes into Sequential OnesComing soon
- 9The Sorting Family: Lower Bounds and Radix SortComing soon
- 10Graph Search and Shortest Paths: BFS, Dijkstra, A*Coming soon
- 11Dynamic Programming: From Recursion to TablesComing soon
- 12Strings: Tries and KMPComing soon
- 13Finale: One Dataset, a Data-Structure ArenaComing soon