Your first Dynamic Programming problem: understand overlapping subproblems & optimal substructure via recursion → memoization → tabulation → space optimization.
after DP
rolling vs table
starter DP
F0=0, F1=1
Generate Fibonacci numbers with tabulation and watch space optimization side‑by‑side.
From naive recursion to memoization, tabulation, and O(1) space improvements with complexity analysis.