Optimal Substructure, Overlapping Subproblems, Memoization vs Tabulation
For each problem: (1) Understand the problem, (2) Identify subproblem structure, (3) Write recurrence relation, (4) Understand base cases, (5) Trace through small example.
Given rod of length n and prices p[i] for lengths i=1..n, find maximum revenue by cutting rod.
Given chain of matrices, find optimal parenthesization to minimize scalar multiplications.
Find longest subsequence common to two sequences (not necessarily contiguous).
Check your problem sets (ps6-ps7) for specific DP problems covered in your course. Practice is key for DP!