Introduction
Dynamic Programming
(DP) is a programming paradigm that can systematically and efficiently explore all possible solutions to a problem
A solution for DP problems has two major characteristics:
Overlapping Subproblems
Optimal Substructure
DP not only aids us in solving complex problems, but it also greatly improves the time complexity compared to brute force solutions
There are two ways to implement a DP algorithm:
Bottom-up, also known as tabulation
Top-down, also known as memoization
You Will Know
topic1
Why Should You Learn These
Contents
Click
cmd/ctrl
+
option/alt
+
T
to expand all toggles
1. Classical Example — Fibonacci sequence
2. Difference Between Other Algorithms
3. Top-down and Bottom-up
4. When to Use DP
Conclusions
References
link1
Further Readings
a further reading for topic 1
Note