Topic-Coverage Heatmap

Scope: all 144 case studies (Beginner 33, Foundational 37, Intermediate 38, Advanced 23, Expert 13). Generated by scripts/gen_topic_heatmap.py from case metadata — regenerate after any case change; do not hand-edit. Companion files: CSV matrix, SVG heatmap.

Taxonomy source

The canonical topics are the course's own vocabulary, drawn from docs/learning-outcomes.md and docs/course-outline.md (the curriculum threads every lecture already teaches), not invented for this report. Each case's free-form topic tags (the full raw-tag inventory) are mapped to exactly one canonical topic by the alias table in the generator; an unmapped tag fails the build rather than vanishing from the count.

Counting methodology

Coverage matrix (SVG preview is the authoritative rendering)

TopicLectures touchedCasesTier mix (B/F/I/A/E)
Problem formulation & requirements20417/14/14/3/3
Decomposition & abstraction562/1/1/1/1
Patterns & sequences7102/2/2/4/0
Loops & iteration583/2/2/1/0
Conditionals & decisions230/1/0/1/1
Pseudocode & flowcharts3123/3/3/2/1
Functions & modular design141/1/1/0/1
Arrays & lists472/2/2/1/0
Strings & text5102/3/4/1/0
Dictionaries & sets473/2/1/0/1
Searching (linear & binary)4103/2/2/0/3
Sorting493/3/1/1/1
Recursion & divide-and-conquer361/2/1/1/1
Invariants & correctness462/2/1/1/0
Greedy & optimization6133/4/2/3/1
Dynamic programming230/0/1/1/1
Graphs & networks592/1/3/2/1
Counting & probability6154/3/5/2/1
Simulation7101/1/2/3/3
Data analysis12295/7/10/5/2
Debugging & testing9226/6/4/5/1
Complexity & trade-offs11151/2/5/7/0
Ethics & strategic reasoning220/0/0/2/0

Coverage gaps (topic in ≤ 5 lectures)

Concentrations (cells with ≥ 3 cases in one lecture)

Overrepresented topics (most cases overall)

Known limitations

Lecture case counts span 4–6 per lecture (every lecture has cases — the validator enforces it).