[LeetCode][JavaScript]Climbing Stairs

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode][JavaScript]Climbing Stairs相关的知识,希望对你有一定的参考价值。

Climbing Stairs

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

https://leetcode.com/problems/climbing-stairs/

 

 


 

 

直接递归超时了,要动态规划。

打印前几个数就可以看出规律,1, 2, 3, 5, 8...

从3开始dp[i] = dp[i - 1] + dp[i - 2]。

 

 1 /**
 2  * @param {number} n
 3  * @return {number}
 4  */
 5 var climbStairs = function(n) {
 6     if(n === 0) return 0;
 7     if(n === 1) return 1;
 8     if(n === 2) return 2;
 9     var dp = [0, 1, 2];
10     for(var i = 3; i <= n; i++)
11         dp[i] = dp[i - 1] + dp[i - 2];
12     return dp[n];
13 };

 

以上是关于[LeetCode][JavaScript]Climbing Stairs的主要内容,如果未能解决你的问题,请参考以下文章

javascript vue-cli snipet

javascript 使用ember-cli示例导入实用程序

关于资产优化的 Angular-cli 'JavaScript heap out of memory'

Vue js CLI 2导入并使用javascript插件

如何使用 CLI 将带有节点模块的 TypeScript Web 应用程序编译成一个 JavaScript 文件? [关闭]

javascript crawl.js用于构建CLI以使用web-crawljs文章对网页进行爬网