day38 动态规划part1 代码随想录算法训练营 70. 爬楼梯
题目:70. 爬楼梯
我的感悟:
- 居然自己先写出来了!!继续努力!!
理解难点:
听课笔记:
- 注意dp[0]是没有含义的
- 哈哈,我跟老师写的几乎一样,思路没错!!
我的代码:
class Solution:
def climbStairs(self, n: int) -> int:
if n == 1:
return 1
dp = [0] *(n+1)
dp[1] = 1
dp[2] = 2
for i in range(3,n+1):
dp[i] = dp[i-1]+dp[i-2]
return dp[n]
通过截图:
我的错误写法:
老师的代码:
# 空间复杂度为O(n)版本
class Solution:
def climbStairs(self, n: int) -> int:
if n <= 1:
return n
dp = [0] * (n + 1)
dp[1] = 1
dp[2] = 2
for i in range(3, n + 1):
dp[i] = dp[i - 1] + dp[i - 2]
return dp[n]