第八题 跳台阶
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
分析
考察数学建模能力
这题关键就是要学会分析题目。其实就是斐波那契数列
1级台阶时,1种跳法
2级台阶时,2种跳法
n>2级台阶时,把n级台阶时的跳法看成是n的函数,如果n级台阶记有f(n)种跳法,
当第一次跳了1级,那么剩下有f(n-1)种跳法
当第一次跳了2级,那么剩下有f(n-2)种跳法
所以n级台阶有f(n)=f(n-1)+f(n-2)种跳法
function jumpFloor(number)
{
// write code here
var arr=[0,1,2],
one=1,
two=2,
sum=0;
if(number<3)return arr[number];
for(var i=3;i<=number;i++){
sum=one+two;
one=two; //保存
two=sum; //保存
}
return sum;
}
知识点:递归
关键点:已经计算过的存起来