剑指offer--(8) 跳台阶

来源:互联网 发布:sql获取整数位数 编辑:程序博客网 时间:2024/06/15 01:37

剑指offer–(8) 跳台阶

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

思路描述
1. 第一步可以跳一阶或两阶,那么剩余台阶数为n-1或n-2,那么跳台阶的种数为f(n-1)+f(n-2)
2. 最后能跳完,则表示该跳法可行,返回1;
3. 剩余步数为负数,则该跳法不可行,返回0
Java 实现:

import java.util.Scanner;public class 跳台阶 {    public static void main(String[] args) {        // TODO Auto-generated method stub        Scanner scanner=new Scanner(System.in);        int n;        while(scanner.hasNext()){            n=scanner.nextInt();            System.out.println(JumpFloor(n));        }    }    public static int JumpFloor(int target) {           if(target==0)            return 1;        if(target<0)            return 0;        return JumpFloor(target-1)+JumpFloor(target-2);    }}
原创粉丝点击