美文网首页
【前端】剑指offer题解每日一更

【前端】剑指offer题解每日一更

作者: 玉面小猿 | 来源:发表于2018-07-30 22:45 被阅读0次

题目

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法
思路
先按照排列组合原理写出n个台阶的跳法

n 可得到的跳台阶方法
0 0
1 1
2 2
3 4
4 8
5 16

解法

#include <iostream>
#include <string>
#include <algorithm>
//变态青蛙跳台阶
using namespace std;
class Solution {
public:
    int jumpFloorII(int number) {
        int sum = 0;  //定义输出总和
        int arr[1001] = { 1,1,2 }; 
        //初始化最初的三个数,作为基数
//对于1 1 2 进行特殊处理
        if (number <= 2) { return arr[number]; }
        else {
//对于当前的数字来说,需要加上它之前的所有数字
            for (int i = 3; i <= number; i++) {
                for (int j = 0; j <= i; j++)
//加上第0 1 2 3个数字
                    arr[i] += arr[i - j];
            }
            return arr[number];
        }
    }
};

int  main() {
    int n;
    cin >> n;
//定义一个接口
    Solution Fbnc;
//拿到实现的成员函数的值
    int result = Fbnc.jumpFloorII(n);
    cout << result;
    system("pause");
}

相关文章

  • 【前端】剑指offer题解每日一更

    题目 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺...

  • 【前端】剑指offer题解每日一更

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

  • 【前端】剑指offer题解每日一更

    题目 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 解法

  • 2019校招Android面试题解1.0(算法篇)

    在校招题解的算法篇中,还整理了部分《剑指offer》原题,这里均用Java实现。 校招面试题解 剑指offer题解...

  • 剑指offer题解

    前言 2. 实现 Singleton 3. 数组中重复的数字 4. 二维数组中的查找 5. 替换空格 6. 从尾到...

  • 剑指offer每日一更

    题目 // 面试题4:二维数组中的查找// 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按...

  • 每日一练(37):实现 strStr()

    title: 每日一练(37):实现 strStr() categories:[剑指offer] tags:[每日...

  • 剑指 Offer - python 题解

    断断续续刷完了牛客网上的剑指 Offer 题目,也随着整理了所有题目的解答方案,python 写的。 目录如下: ...

  • 剑指Offer - Python题解

    1. 二维数组中的查找 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,...

  • 剑指offer算法题解

    1. JZ3 从尾到头打印链表 2. JZ15 反转链表 3. JZ16 合并两个排序的链表 4. JZ14 链表...

网友评论

      本文标题:【前端】剑指offer题解每日一更

      本文链接:https://www.haomeiwen.com/subject/llvqvftx.html