Fibonacci Number LeetCode solution in JavaScript

1
/**
2
* @param {number} n
3
* @return {number}
4
*/
5
// Recursion and memomization approach
6
var fib = function (n, cache = {}) {
7
if (n <= 0) return 0;
8
if (n in cache) {
9
return cache[n];
10
}
11
if (n == 1 || n == 2) {
12
return 1;
13
}
14
cache[n] = fib(n - 1, cache) + fib(n - 2, cache);
15
return cache[n];
16
};
17
//Tabulation approach
18
var fib = function (n) {
19
const table = new Array(n + 1).fill(0);
20
table[1] = 1;
21
for (let i = 0; i <= n; i++) {
22
table[i + 1] += table[i];
23
table[i + 2] += table[i];
24
}
25
return table[n];
26
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0