假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部?
Example 1:
Input: n = 3
Output: 3
Explanation:
1) 1, 1, 1
2) 1, 2
3) 2, 1
total 3.
Example 2:
Input: n = 1
Output: 1
Explanation: only 1 way.
解答:
/**
* @param n: 楼梯的阶数
* @return: result 爬楼梯的方法数
*/
const climbStairs = function (n) {
if(n <= 3){
//前三阶直接返回结果
return n;
}else{
let result = 0;
// 二阶的方法数
let num1 = 2;
// 三阶的方法数
let num2 = 3
// 从第四阶开始循环叠加
for(let i=3;i<n;i++){
res = num1+num2;
num1 = num2;
num2 = res;
}
return result;
}
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。