乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
# -*- coding:utf-8 -*-
class solution:
def jumpfloor(self, number):
# write code here
if number <= 0:
return 0
a = 1
b = 1
for _ in xrange(number):
b,a = a+b,b
return a
可以用遞迴的思路,f(1)=1,f(2) = 2,f(n) = f(n-1) +f(n-2),就是先跳乙個台階的組合數加上先跳兩個台階的組合數。
同時,這個問題仍然是乙個
斐波那契數列,number = 1時 a=1,number=2時,a=2,number=3時,a = 1+2 ,........
劍指offer 8 跳台階
題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 思路 由題可知,青蛙跳台階,跳上n階,可以一階一階的跳,也可以兩階兩階的跳,還可以交叉來。如果函式f n 表示跳到n階的方法,那麼如果最後一次跳一階,則前面有f n 1 種,如果最後是跳2階,則前面有...
劍指offer8 跳台階
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。假設,一級台階,有f 1 種方法,二級有f 2 種,以此類推,n級有f n 種方法。可以看出,f 1 1 f 2 2。那麼,假設n級台階,那麼第一步就有兩種情況,跳一步,跟跳兩步。情況一 跳一步,那麼接下去的就...
劍指offer(8)跳台階
時間限制 1秒 空間限制 32768k 熱度指數 243091 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。我們假設f n 代表著n階台階的跳法,假設現在有6階的台階,最後一步我們可以從第五個台階跳一級跳上去,或者從第四階台階跳兩擠跳上去,這樣的跳法就是...