PHASE 10
🧮 Greedy & Dynamic Programming
Greedy algorithms grab the best option at each step; dynamic programming remembers solved sub-problems so nothing is computed twice. Learn when each works and solve the classics.
⏱️ ~2.5 hours of lessons
📚 3 lessons
✏️ 8 exercises Hard
▶ Start this phase
🎯 In this phase you will…
- Recognise when greedy works
- Turn recursion into memoised DP
- Build bottom-up DP tables
- Solve classic DP problems
📺 Lessons in this playlist
📝 Phase test
Concept questions, pseudocode writing, tracing and debugging — check you’re ready for the next phase.
💡 Concept check
Which two ingredients make a problem a good fit for dynamic programming?