70. 爬楼梯
解题思路
- DP进阶题目
- 需要根据题意或者使用举例类推,找出动态转移方程
- f(1)=1,f(2)=2,f(3)=3,f(4)=5
- f(n)=f(n-1)+f(n-2)
3.根据动态转移方程,编写代码
4.DP要注意,边界的处理
解题遇到的问题
1.无
后续需要总结学习的知识点
1.DP深入学习,理解透彻,学会从题目中梳理出动态转移方程
##解法1
class Solution {
/**
* DP进阶
* 需要根据题意,找出动态转移方程
* f(1)=1,f(2)=2,f(3)=3,f(4)=5
* f(n)=f(n-1)+f(n-2)
*/
public int climbStairs(int n) {
if (n <= 2) {
return n;
}
int fnd1 = 2;
int fnd2 = 1;
for (int i = 3; i < n; i++) {
int temp = fnd1;
fnd1 = fnd1 + fnd2;
fnd2 = temp;
}
return fnd1 + fnd2;
}
}
网友评论