劍指 offer_第八題_跳臺階
阿新 • • 發佈:2018-11-15
平臺
牛客網
語言
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