[剑指offer]跳台阶
时间限制:1秒 空间限制:32768K 热度指数:452462
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
思路:跳上第n阶之前一个只有两种可能,要么在第n-1,要么在n-2上,因此f(n)=f(n-1)+f(n-2);
solution1:
1 class Solution { 2 public: 3 int jumpFloor(int number) { 4 if(number==1||number ==2)return number; 5 return jumpFloor(number-1)+jumpFloor(number-2); 6 } 7 };
思考:递归很简单,发现DP解法好像就是正着来,也没什么区别。