juniorDynamic Programming
What is the 'State' in Dynamic Programming?
Updated Apr 28, 2026
Short answer
A set of variables that uniquely identifies a subproblem.
Deep explanation
Dynamic Programming (DP) is an algorithmic paradigm that solves a given complex problem by breaking it into subproblems and stores the results of subproblems to avoid computing the same results again. A set of variables that uniquely identifies a subproblem.
Real-world example
Cashiers giving change using the minimum number of coins.
Common mistakes
- Creating a memoization table but forgetting to check it before recursing.
Follow-up questions
- What is the space complexity of this Fibonacci approach?