Definition and Principles
Explanation of Dynamic Programming.
Difference between DP and other approaches (e.g., Greedy, Divide and Conquer).
Characteristics of DP
Optimal substructure.
Overlapping subproblems.
Advantages and Limitations