题目:
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。
法一:递归函数
class Solution:
def climbStairs(self, n: int) -> int:
if n == 0 or n == 1:
return 1
else:
return self.climbStairs(n-1)+self.climbStairs(n-2)
法二:
class Solution:
def climbStairs(self, n: int) -> int:
f1,f2 = 1,1
for i in range(n-1):
f1,f2 = f2,f1+f2
return f2