首页
技术
登录
6mi
u
盘
搜
搜 索
技术
leetcode-70.爬楼梯
leetcode-70.爬楼梯
技术
2022-07-11
70
/* * @lc app=leetcode.cn id=70 lang=csharp * * [70] 爬楼梯-斐波那契数列 f(n) = f(n-2) + f(n-1) 数学归纳法-递推 1:1-->f(1) = 1 2:2-->从1级走过来;从0直接走过来f(2) = 2 3:3-->只能从1和2走过来,所以3的解法共有1和2的解法和 f(3) = f(2) + f(1) 4:f(4) = f(2) + f(3) = f(2) + f(2) + f(1) 类推 f(n) = f(n-1) + f(n-2)-->只保留最近 重复 子阶段 时间复杂度 */
// @lc code=start
public
class
Solution
{
public
int
ClimbStairs
(
int
n
)
{
//解法1:最近重复子问题
/*int f1 = 1; int f2 = 2; int f3 = f1 + f2; //int num = 0; if(n <= 2) return n; for(int i = 3; i < n; i++){ f1 = f2; f2 = f3; f3 = f1 + f2; } return f3;*/
//解法2:递归-会超时
if
(
n
<=
2
)
return
n
;
return
ClimbStairs
(
n
-
1
)
+
ClimbStairs
(
n
-
2
)
;
}
}
// @lc code=end
转载请注明原文地址:https://ipadbbs.8miu.com/read-17510.html
最新回复
(
0
)