class Solution {
public:
int climbStairs(int n) {
if(n == 0) return 0;
if(n == 1) return 1;
if(n == 2) return 2;
int prepre = 1;
int pre = 2;
int cur = 0;
for(int i = 3;i <= n;i ++) {
cur = prepre + pre;
prepre = pre;
pre = cur;
}
return cur;
}
};
本文介绍了一个经典的动态规划问题——爬楼梯问题,并提供了一种高效的C++解决方案。通过迭代而非递归的方式,该算法仅使用常数级别的额外空间实现了问题的求解。
483

被折叠的 条评论
为什么被折叠?



