Dynamic Programming
Overviews and popular problems for Dynamic Programming.
Contents
Overview
Core concepts of Dynamic Programming, optimal substructure, overlapping subproblems, memoization, and tabulation.
Fibonacci Sequence
Solving the Fibonacci Sequence problem using 1D tabulation and O(1) space optimization.
0/1 Knapsack Problem
Solving the 0/1 Knapsack Problem using a 2D table and space-optimized 1D array.
Longest Common Subsequence
Finding the length of the longest common subsequence of two strings using 2D and 2-row tabulation.