手记

剑指Offer-跳台阶

最近一直在复习一些算法及数据结构方面的东西,就找了一个适合找工作笔试的题目,在剑指Offer上刷了几道题目,发现对复习知识点还是很有用的,做到重建二叉树这块。递归传值出了点问题,debug半小时才找出错误,所有还是写篇博客记录一下。也推荐要找工作的伙伴去剑指Offer刷题。

       

题目描述

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

其实这题递归非常简单,数据也不是很大,不用担心栈溢出的问题,代码如下:

public class Solution {
    public int JumpFloor(int target) {
        if(target < 0){
            return 0;
        }
        
        if(target > 0){
            return JumpFloor(target - 1) + JumpFloor(target - 2);
        } 
        return 1; 
    }
}

根据递归的路径不同,将结果汇总就好了。


0人推荐
随时随地看视频
慕课网APP