首页 > 代码库 > 青蛙变态跳台阶解法
青蛙变态跳台阶解法
问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
这个问题可以想到递归来解决,因为以前遇到过类似的爬楼梯问题,也相当于斐波那契数列。
跳台阶,可以跳1级,也可以跳2级,求n级台阶跳法。
第一步有两种跳法:
跳1级,剩下跳法为f(n-1);
跳2级,剩下跳法为f(n-2);
当为n时,f(n)=f(n-1)+f(n-2);
但此题可以跳上n级台阶:
第一步有n种跳法:跳1级、跳2级、到跳n级
跳1级,剩下n-1级,则剩下跳法是f(n-1)
跳2级,剩下n-2级,则剩下跳法是f(n-2)
跳3级,剩下n-3级,则剩下跳法是f(n-3)
......
推理得到:
f(n)=f(n-1)+f(n-2)+...+f(1)
f(n-1)=f(n-2)+f(n-3)+...+f(1)
则f(n)=2*f(n-1)
青蛙变态跳台阶解法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。