跳台阶

https://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4?tpId=13&tqId=11161&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

思路

前导:先理解斐波那契数列https://www.jianshu.com/p/fa9b6076ce16
1.当n=0,跳法为0
2.当n=1,跳法为1
3.当n=2,跳法为2
3.因为一次可上1个台阶或2个台阶,如果现在还剩1个台阶,则有F(n-1)钟跳法,如果现在还剩2个台阶,则有F(n-2)种跳法,所以F(n)=F(n-1)+F(n-2),即斐波那契数列

代码

public class Solution {
    public int JumpFloor(int target) {
        int n=0;
        if(target==1){
            return 1;
        }
        if(target==2){
            return 2;
        }
        if(target>2){
             n=JumpFloor(target-1)+JumpFloor(target-2);
        }
        return n;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容