8. 递归和循环-跳台阶

题目描述

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

/**
 * Created by ZengXihong 2019-06-02.
 * 题目描述
 一只青蛙一次可以跳上1级台阶,也可以跳上2级。
 求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
 1. 只有 1 级台阶,跳法 为 1
 2. 只有 2 级台阶,跳法 为 2
 3. 大于 2 级台阶时,要跳上最高级时,
 有两种选择,一种是处于 n-1 级直接跳上去,一种是处于 n-2 级直接跳上去,
 而处于 n-1 级的跳法有 JumpFloor(n-1)种
   处于 n-2 级的跳法有 JumpFloor(n-2)种
 故 最终共有 JumpFloor(target-1)+JumpFloor(target-2) 种
 */
public class Solution8 {
    public int JumpFloor(int target) {
        if(target<=2){
            return target;
        }
        return JumpFloor(target-1)+JumpFloor(target-2);
    }
}

你可能感兴趣的:(8. 递归和循环-跳台阶)