劍指 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

補充知識點

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章