剑指 offer_第八题_跳台阶

平台

牛客网

语言

python2.7.3

作业内容

题目描述

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

题目理解

该题的本质是斐波那契数列

解题思路

一级:1种跳法   1
二级:2种       11    2
三级:3种       111     12      21
四级:5种       1111    112     121     211     22
五级:8种       11111   1112    1121    1211    2111    122     212     221
青蛙可以一次跳2级,或1级,即总共跳的台阶数都是由2和1相加得到的

程序

class Solution:
    def jumpFloor(self, number):
        if number == 1:
            return 1
        if number == 2:
            return 2
        else:
            a,b =1,2
            for i in range(2, number ):
                a,b = b,a+b
            return b

补充知识点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值