What is dynamic programming?
What is dynamic programming?
Approach: Define method for solving problems with overlapping subproblems.
Method for solving complex problems by breaking into overlapping subproblems and storing results to avoid recomputation. Requires optimal substructure.
Follow-up: Difference from divide and conquer?
Key concepts: optimal substructure, overlapping subproblems, memoization.