VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • 力扣中国70题爬楼梯

# 这道题是递归的思想,想要爬上第n台阶,
# 1,可以通过n-1层上去,2,通过第n-2层上去
# 因此f(n) = f(n-1) + f(n-2)
class Solution:
    def climbStairs(self, n: int) -> int:
        # 前两层比较特殊,需要自行定义。
        if n == 1 or n == 2:return n
        # 定义两个数字,用来保存f(n-1) f(n-2)
        # num_1表示f(n-2),num_2表示f(n-1)
        num_1,num_2 = 1,2
        sum = 0
        # 通过for循环从第三层台阶计算到第n层台阶
        for index in range(2,n):
            # print(sum,num_1,num_2)
            sum = num_1 + num_2
            # 这里注意num_1和num_2表示的含义。
            num_1 = num_2
            num_2 = sum
        return sum

相关教程