筆試算法---變態跳臺階

# -*- coding:utf-8 -*-
class Solution:
    def jumpFloor(self, number):
        # write code here
        a = 1
        b = 1
        for i in range(number):
            t = a+b
            a = b
            b = t            
        return a

分析:假定有6個臺階,那麼,分兩類,如果從5開始,則有f(5)種,從4開始,則有f(4)種,也就是說,如果有6層臺階,分爲兩種情況,從5到6和從4到6,那麼遞歸下去,就是f(6) = f(5) + f(4)

着便成了一個斐波那契數列問題。

所以實質上是一個找規律的問題。

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