Question: what are the different steps involved in dynamic programming?
Answer: Characterize the structure of an optimal solution., Recursively define the value of an optimal solution., Compute the value of an optimal solution, typically in a bottom-up fashion., Construct an optimal solution from the computed information.