Skip to content

Week 4 — Dynamic Programming I

Topics: Recurrence Relations · Memoization · 1D DP Problems · Fibonacci to Knapsack


🚧 Content coming soon. This week's material is being prepared. Check back shortly.


What you'll learn this week

  • DP as memoised recursion: write the recurrence first, optimise second
  • How to derive the state definition from the problem constraints
  • Top-down (memoization) vs bottom-up (tabulation) — same recurrence, different direction
  • Transitioning from Fibonacci to unbounded knapsack using the same framework

Problems to solve

Problem Difficulty Pattern
Climbing Stairs Easy 1D DP
House Robber Medium 1D DP
Coin Change Medium Knapsack
Longest Increasing Subsequence Medium 1D DP
0/1 Knapsack Medium Knapsack

Full notes, code walkthroughs, and video sessions will be added here.