Climbing Stairs (1D DP) Visualizer & Step-by-Step Algorithm Solution

Calculate distinct ways to climb n stairs using top-down memoization, filling a 1D DP table.

Category: recursion | Difficulty: Easy

Tags: Dynamic Programming, Memoization, Fibonacci, 1D DP

Climbing Stairs (1D DP)

Memoization Table (n)
0
1
2
3
HASH MAP
(Empty Map)
100%
state
n3
Initialization
1/17
Explanation

Starting climbStairs_(3) with memoization.

Source Code
1function climbStairs_(n: number): number {
2 const memo = new Map<number, number>();
3 function dp(n: number): number {
4 if (n <= 2) return n;
5 if (memo.has(n)) return memo.get(n)!;
6 const result = dp(n - 1) + dp(n - 2);
7 memo.set(n, result);
8 return result;
9 }
10 return dp(n);
11}