Skip to main content

Semester 2: Algorithms & Data Structures

Year 1 -- Fundamentals | Phase 2 | Weeks 22-31 | 10 weeks

Curriculum Readiness: Blueprint

Semester 2 is roadmap-visible as Blueprint in the canonical readiness matrix. Use this algorithms material as structure and planning context until content/portal/readiness-matrix.json promotes it to Learner-ready or beyond.


Goal

Build algorithmic sophistication and data structure fluency strong enough that later systems work is grounded in precise reasoning rather than intuition alone. Develop the ability to analyze runtime complexity, justify correctness using mathematical reasoning, and choose appropriate algorithmic approaches based on problem characteristics and constraints.

Prerequisites

Complete Semester 1: Mathematical Foundations including checkpoint gate and cumulative review. You must have solid proof techniques, combinatorial reasoning, mathematical problem-solving skills, and demonstrated ability to implement and verify computational algorithms.


Phase Completion Contract

  • Explain: asymptotic growth, practical correctness reasoning, graph-traversal choices, and greedy-vs-DP tradeoffs.
  • Build: a tested algorithms repo with implementations, analysis notes, and benchmark or comparison evidence.
  • Evidence: runtime writeups, problem classifications, reviewed code, and artifact history in Git.
  • Do not advance if: you are still choosing data structures or paradigms by guessing, or cannot analyze core solutions without external prompting.

Modules

#ModuleFocus
1Algorithm Analysis & Design ParadigmsAsymptotic analysis, correctness proofs, divide-and-conquer, recursion patterns - 18 concept pages
2Sorting, Searching & Fundamental StructuresComparison sorts, hash tables, heaps, priority queues - 16 concept pages
3Graph Algorithms & Network AnalysisGraph representations, traversals, shortest paths, spanning trees, network flow - 20 concept pages
4Dynamic Programming & OptimizationOptimal substructure, memoization, classical DP problems, greedy vs DP trade-offs - 17 concept pages
5Advanced Data Structures & Amortized AnalysisBalanced trees, union-find, advanced heaps, amortized complexity reasoning - 19 concept pages

Core Resources

BookRole
The Algorithm Design Manual (Skiena)Primary / problem-driven reference
Introduction to Algorithms (CLRS)Reference / proofs and depth
Algorithms (Sedgewick)Selective / implementations and visual intuition

Non-Technical Parallel Reading

BookTheme
The Checklist ManifestoBuilding disciplined problem-solving habits under time pressure

Cross-Cutting Tracks Active This Semester

TrackLevelFocus This Semester
A: TestingLevel 1Unit tests for every algorithm implementation; add simple property checks for sort, search, and set-like behavior
B: Git / CI/CDLevel 2Use a dedicated algorithms repo with linting, formatting, and small reviewed commits after each problem set
E: Engineering FundamentalsLevel 2Profiling basics, debugging failing implementations, and writing short analysis notes beside code
C: Security-Not a primary focus yet
D: Observability-Not a primary focus yet

Weekly Arc

WeekFocusModules
22Asymptotics and correctnessModule 1: growth rates, loop counting, recursion traces
23Divide-and-conquer and recurrence thinkingModule 1 deepening, first timed analysis drills
24Sorting and searchingModule 2: binary search, merge/quicksort, heap intuition
25Core structures and implementation tradeoffsModule 2: arrays, heaps, hash-table intuition, testing patterns
26Graph representations and traversalsModule 3: BFS, DFS, connected components, shortest-path setup
27Weighted graphs and spanning treesModule 3: Dijkstra, MST intuition, graph problem classification
28Dynamic programming foundationsModule 4: recurrence design, memoization, tabulation
29Greedy choice and proof instinctModule 4: exchange arguments, greedy-vs-DP tradeoffs
30Advanced structuresModule 5: balanced trees, union-find, amortized analysis
31Integration and assessmentSemester project, cumulative review, exam prep, weak-area repair

Spaced Repetition Schedule

Use short daily reviews. Algorithms decay fast if retrieval is delayed.

WeekNew DeckReview Decks
22M1 asymptotics and recurrence cardsSemester 1 proof and discrete structures cards
23M1 correctness and divide-and-conquer cardsM1 + selected Semester 1 math cards
24M2 sorting and search cardsM1 maintenance review
25M2 structures and tradeoff cardsM1 + M2 interleaved review
26M3 graph vocabulary cardsM2 + selected Semester 0 algorithm-intuition cards
27M3 graph algorithm pattern cardsM1-M3 review
28M4 DP foundations cardsM3 maintenance review
29M4 greedy tradeoff cardsM2-M4 interleaved review
30M5 data-structure and amortization cardsM1-M5 review
31No major new deckFull Semester 2 consolidation review

Weekly Learning Journal Schedule

Use the template at _templates/weekly-journal.md every week. Specific reflection prompts for this semester:

  1. How did this week's problem change your intuition about complexity?
  2. Where did a naive implementation mislead you before analysis?
  3. What invariant, proof sketch, or recurrence is worth preserving as a flashcard?

Semester Deliverables


Capstone Throughline

Every semester must leave behind evidence that can survive into the final capstone defense.


Model Artifact Calibration

Use the algorithm benchmark note model artifact to calibrate benchmark questions, measurements, interpretation, and decisions.


Enrichment Pages

Portfolio Artifact | Common Failure Modes | Bridge Review