【LeetCode】面试题10-2. 青蛙跳台阶问题

题目:

思路:

动态规划(其它方法同斐波那契数列)

  • 初始状态: dp[0]=1,dp[1]=1
  • 转移方程: dp[n] = dp[n-1] + dp[n-2],同斐波那契数列相同

代码:

Python

class Solution(object):
    def numWays(self, n):
        """
        :type n: int
        :rtype: int
        """
        dp = []
        dp.append(1)
        dp.append(1)
        for i in range(2, n + 1):
            dp.append((dp[i - 1] + dp[i - 2]) % 1000000007)
        return dp[n]
posted @ 2020-05-18 18:00  一只背影  阅读(243)  评论(0编辑  收藏  举报