diff --git a/02. Algorithms/09. Dynamic Programming/007. Fibonacci Number/code.js b/02. Algorithms/09. Dynamic Programming/007. Fibonacci Number/code.js new file mode 100644 index 00000000..cf73eb2b --- /dev/null +++ b/02. Algorithms/09. Dynamic Programming/007. Fibonacci Number/code.js @@ -0,0 +1,22 @@ +/** + * @param {number} n + * @return {number} + */ +var fib = function(n) { + + const hash = {}; + const dfs = (n) => { + if(hash[n]) return hash[n]; + if(n <= 0) { + return 0; + } + if(n === 1) { + return 1; + } + const result = dfs(n-1) + dfs(n-2); + hash[n] = result; + return result; + } + + return dfs(n); +};