题目:
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
思路:
f(n) = f(n-1)+f(n-2)+…+f(1)
f(n-1) = f(n-2)+f(n-3)+…+f(1)
f(n) = f(n-1)+f(n-1) = 2*f(n-1)
代码:
class Solution:
def jumpFloorII(self, number):
if number == 1 or number == 0:
return number
else:
return self.jumpFloorII(number-1)*2