我是靠谱客的博主 淡淡项链,这篇文章主要介绍剑指Offer Java 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。,现在分享给大家,希望可以做个参考。

题目描述(题一)

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

Java题解

首先我们可以确定这个题目可以使用递归完成,他有可能跳两级也可能跳一级,不管跳多少,最后都跳完就认为是一种方法

public class Solution {
    private int num = 0;
    public int JumpFloor(int target) {
        num = 0;
        jump(target);
        return num;
    }
    
    public void jump(int lastNum){
        if(lastNum == 0){
            num++;
        }else if(lastNum > 0){
            jump(lastNum - 2);
            jump(lastNum - 1);
        }
    }
}

一道类似的题目:

题目描述(题二)

 

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

Java题解

这个自己从1个格子 画到 4个格子 就能找出来规律了~

import java.util.*;
public class Solution {
    public int JumpFloorII(int target) {
        return (int)Math.pow(2, target - 1);
    }
}

 

最后

以上就是淡淡项链最近收集整理的关于剑指Offer Java 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。的全部内容,更多相关剑指Offer内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(133)

评论列表共有 0 条评论

立即
投稿
返回
顶部