8.跳台阶
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
记录
写一写:
1 2 3 4 5 6 … n
1 2 3 5 8 13 … f(n-1)+f(n-2)
n = 1 1种:1
n = 2 2种:(1,1 ),2
n > 2 f(n-1)+f(n-2)
和斐波那契数列很像。
# -*- coding:utf-8 -*-
class Solution:
def jumpFloor(self, number):
# write code here
#n=2时有点区别
if number <= 2:
return number
else:
a = 1
b = 2
res = 0
for i in range(3, number+1):
res = a + b
a = b
b = res
return res