概述
内容:
一只青蛙一次可以跳上一级台阶,也可以跳上二级台阶。求该青蛙跳上n级台阶共有多少种跳法。
题目分析:
先简单考虑。如果只有1级台阶,那么只有一种跳法,如果是2级台阶,那么有两种跳法。我们把n级台阶的跳法当成一个函数f(n),那么当n级台阶,n>2时,每次跳台阶都有两种不同的跳法:一是跳1级,此时的跳法数目等于后面剩下的n-1级台阶的跳法数目,即为f(n-1),二是跳2级,此时的跳法数目等于后面剩下的n-2级台阶的跳法数目.所以n级台阶的不同跳法的总数f(n)=f(n-1)+f(n-2),相当于菲波那切数列。
代码实现:
int F(int n)
{
int F1 = 1;
int F2 = 0;
int F3 = 0;
if (n==1)
return 1;
if (n == 2)
return 2;
while (n>2){
F3 = F1 + F2;
F2 = F1;
F1 = F3;
n--;
}
return F3;
}
最后
以上就是自然星月为你收集整理的每日一练:青蛙跳台阶问题的全部内容,希望文章能够帮你解决每日一练:青蛙跳台阶问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复