题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法
- 解析:对于很多的类似问题,都会牵扯到递归算法,感觉有种小学数学中找规律的意思。所以处理这种问题,重要的还是能总结出递归规律,在实现,就比较简单了。
int jumpFloor(int number)
{
if (number <= 0)
return 0;
else if (number == 1)
return 1;
else if (number == 2)
return 2;
else
return jumpFloor(number - 1) + jumpFloor(number - 2);
}
- 变态跳台阶
int jumpFloorII(int number) { if(number == 0) return 0; else if(number == 1) return 1; else return 2*jumpFloorII(number-1); }