zoukankan      html  css  js  c++  java
  • 跳台阶

    题目描述

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

    思路

    使用斐波那契数列求解

    n=1时,跳法只有1种,f(1);

    n=2时,跳法有2种,f(2);

    从n>2开始,就可以将n分为两种情况:

    情况1,第一步跳1阶台阶,那么就剩n-1阶台阶,n-1阶台阶的台阶跳法为f(n-1);

    情况2,第一步跳2阶台阶,那么就剩n-2阶台阶,n-2阶台阶的台阶跳法为f(n-2);

    所以得出结论:f(n) = f(n-1) + f(n-2),此规律符合斐波那契数列。

    class Solution {
    public:
        int jumpFloor(int number) {
            int one_floor = 1;
            int two_florr = 2;
            int total_ways = 0;
            if(number == 1) return 1;
            if(number == 2) return 2;       
            if(number > 2) total_ways = jumpFloor(number - 1) + jumpFloor(number - 2);
            return total_ways;
        }
    };
  • 相关阅读:
    20180710
    20180709
    20180706
    20180705
    20180704
    python3.x 函数的参数
    python函数返回值
    Centos7下命令笔记-ls
    CentOS系统内核、操作系统位数以及系统参数查看
    CentOS7 配置光盘iso镜像为本地yum源
  • 原文地址:https://www.cnblogs.com/zhousong918/p/10272346.html
Copyright © 2011-2022 走看看