Data Structures and Algorithms — Dynamic Programming
Dynamic Programming (DP) is an optimization technique for solving problems by breaking them down into overlapping subproblems and storing solutions to avoid redundant calculations.
// Example: Fibonacci using DP
function fibonacci(n) {
let dp = [0, 1];
for (let i = 2; i <= n; i++) {
dp[i] = dp[i - 1] + dp[i - 2];
}
return dp[n];
}
console.log(fibonacci(6)); // Output: 8