August 2024
Intermediate to advanced
516 pages
11h 47m
English
Luckily, we do have options, and that is through something called dynamic programming. Dynamic programming is the process of optimizing recursive problems that have overlapping subproblems.
(Don’t pay too much attention to the word dynamic. There’s some debate as to how the term came about, and there’s nothing obviously dynamic about the techniques I’m about to demonstrate.)
Optimizing an algorithm with dynamic programming is typically accomplished with one of two techniques.
The first technique is something called memoization. And no, that’s not a typo. Pronounced meh-moe-ih-ZAY-shun, memoization is a simple, but brilliant, technique for reducing recursive calls in cases of overlapping subproblems.
Read now
Unlock full access