思路
- 1.定义一个memo数组,然后初始化memo[1]=1,memo[2]=2
- 2.for循环从3开始,memo[i]=memo[i-2]+memo[i-1]
- 3.return memo[n]
/*
* @lc app=leetcode.cn id=70 lang=javascript
*
* [70] 爬楼梯(动态规划)
*/
// @lc code=start
/**
* @param {number} n
* @return {number}
* 1.定义一个memo数组,然后初始化memo[1]=1,memo[2]=2
* 2.for循环从3开始,memo[i]=memo[i-2]+memo[i-1]
* 3.return memo[n]
*/
var climbStairs = function (n) {
const memo = []
memo[1] = 1
memo[2] = 2
for (let i = 3; i <= n; i++) {
memo[i] = memo[i - 2] + memo[i - 1]
}
return memo[n]
}
// @lc code=end