题目:爬楼梯
简单的斐波那契公式
要注意的是,这里使用递归会超时,然后最好不要使用数组(因为除了当前值的前两个,再往前的数据更本就用不到,应该使用临时变量,存储在栈上,用完就释放内存)
1int climbStairs(int n)
2{
3 if(n <= 2) return n;
4
5 int prev1 = 1, prev2 = 2;
6 int curr = 0;
7 for(int i = 3; i <= n; i++)
8 {
9 curr = prev1 + prev2;
10 prev1 = prev2;
11 prev2 = curr;
12 }
13 return curr;
14}