我是靠谱客的博主 爱笑钢笔,最近开发中收集的这篇文章主要介绍牛客网_剑指offer_变态跳台阶_c++,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目描述:

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

解题思路:

依旧还是递归的思路,找到对应的递归式十分重要,这里显然,可以由任意一阶到第n阶,则对应的递归式为:
f(n) = f(0) + f(1) + f(2) + … + f(n-1)

注意:由于可以从原始的位置直接跳到n阶,所以这里一定要注意有一个f(0) = 1

具体代码如下:

class Solution 
{
public:
    int jumpFloorII(int number) 
    {
        if (number == 0) return 1;
        if (number == 1) return 1;
        if (number == 2) return 2;
        if (number > 2)
        {
            int res = 0;
            for (int i = 0; i < number; i++)
            {
                res += jumpFloorII(i);
            }
            return res;
        }
        else return -1; //出错的时候返回-1
    }
};

最后

以上就是爱笑钢笔为你收集整理的牛客网_剑指offer_变态跳台阶_c++的全部内容,希望文章能够帮你解决牛客网_剑指offer_变态跳台阶_c++所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部