Skip to main content

Reference and Selective Reading

You do not need to read Grokking Algorithms front-to-back for this module. Use the concept and practice pages first. Open these only when you want the original explanation, more examples, or a deeper look at the same idea.

Scope Note​

This reference page maps only the Grokking Algorithms material that supports the current Semester 0 intuition module.

It does not attempt to cover every chapter in the book. Later topics such as Dijkstra, greedy algorithms, dynamic programming, k-nearest neighbors, and trees are intentionally deferred so Semester 0 stays focused on first-pass algorithm intuition rather than full algorithm coverage.

Read Only If Stuck​

Optional Deep Dive​

Source-Role Clarity​

  • Primary teaching source: the concept and practice pages in this module
  • Selective reference: the linked Grokking Algorithms chunks from chapters 1-6
  • Exercise source: the drills and practice pages in this module
  • Official docs: not required here because this module is concept-heavy rather than tool- or API-heavy
  • Optional deep dive: hash-table use cases, graph extras, and the full chunk index

Concept-to-Source Map​

Concept pageBest source if stuckWhy this source
Search by Eliminating Half the PossibilitiesBinary search / A better way to search / LogarithmsBest first explanation of halving the search space and why sorted order matters
Growth Rate Beats Raw TimingWhat Big OBest for growth-rate intuition and common runtime families
Data Shape Controls What Feels FastArrays and 5 Hash TablesBest for storage tradeoffs and key-based lookup
Break Big Problems Into Smaller OnesRecursion and 3 RecursionBest for base case thinking and understanding how the call stack holds unfinished work
Sorting Reveals Algorithm ShapeExample Code Listing, 4 Quicksort, and Quicksort (Part 1)Best for comparing repeated full scans with divide-and-conquer partitioning
Think in Graphs, Then Search Breadth-First6 Breadth-first Search and Queues / Running timeBest for graph modeling, BFS waves, queue behavior, and shortest unweighted path reasoning

Direct Chunk Shortcuts By Need​

If you need help with...Best chunk
why binary search is dramatically fasterRunning time / Big O notation
common runtime shapesWhat Big O
array vs linked-list inserts and deletesTerminology / Unordered Ordered / Deletions
why selection sort stays slowExample Code Listing
how divide-and-conquer reduces a problem4 Quicksort
how quicksort partitions around a pivotQuicksort (Part 1)
why hash tables are fast on average but not magicCollisions / Performance / Load factor
how recursion uses the call stack3 Recursion
why BFS needs a queue and a visited setQueues / Running time
task ordering from dependencies6 Breadth-first Search

Source Book Chunks​

For direct chunk access, use Grokking Algorithms Contents.

Deferred Topics From the Book​

These source chunks are real parts of the book, but they are intentionally outside the boundary of this module:

Deferred topicSource chunkWhy it is deferred
Dijkstra's algorithmWorking with Dijkstra's algorithm / terminologyWeighted shortest paths deserve a later algorithm pass after BFS is stable
Greedy algorithms8 Greedy algorithmsBetter placed with later tradeoff-heavy algorithm work
Dynamic programming9 Dynamic programming part 1Too heavy for orientation; belongs in a later problem-solving phase
K-nearest neighbors10 K-nearest neighborsUseful, but not required for Semester 0 algorithm intuition
Trees and advanced survey topics11 TreesBetter after foundational data-structure reasoning is in place

If you want to study those topics later, treat this table as a forward map rather than a missing-content list.