Dynamic programming
Dynamic programming is optimization over [[recursion]]. Whenever we see a recursive solution that has repeated calls for the same inputs, we can optimize it using dynamic programming. 1
The idea is to store the results of the sub-problems, so we don't have to recompute them.
-
https://www.geeksforgeeks.org/dynamic-programming/# ↩