Dynamic Programming is not Black Magic – Quentin Santos

popcar2@programming.dev to Programming@programming.dev – 27 points –
qsantos.fr
8

You are viewing a single comment

Am I understanding this correctly that dynamic programming == breaking a problem into smaller (reoccurring) sub-problems and using caching to improve performance?

That is conceptually how dynamic programming works, but in practice the way you build the cache is from the bottom up rather than from the top down. It's a bit like how you can implement computation of the Fibonacci sequence in a top-down manner using a recursive function with caching, but it is a lot more efficient to instead build it in a bottom-up manner.