python爬楼梯代码
时间: 2023-10-13 16:20:11 浏览: 44
以下是一个简单的 Python 爬楼梯代码示例:
```python
def climbStairs(n):
if n == 1:
return 1
elif n == 2:
return 2
else:
first = 1
second = 2
for i in range(3, n+1):
third = first + second
first = second
second = third
return second
```
这段代码可以计算出爬 n 级楼梯有多少种不同的方法。
相关问题
python小明爬楼梯代码
以下是Python实现小明爬楼梯的代码:
```python
def climb_stairs(n: int) -> int:
if n <= 2:
return n
dp = [0] * n
dp[0] = 1
dp[1] = 2
for i in range(2, n):
dp[i] = dp[i-1] + dp[i-2]
return dp[n-1]
```
其中,`n`表示楼梯的阶数,函数返回小明爬到楼梯顶部的不同方法数。算法采用动态规划的思想,使用一个数组`dp`来存储每个阶梯的不同方法数。初始状态为`dp[0]=1`,`dp[1]=2`,表示小明爬1阶楼梯有1种方法,爬2阶楼梯有2种方法。之后,从第3阶楼梯开始,每个阶梯的方法数等于前两个阶梯方法数之和。最终返回`dp[n-1]`,即小明爬到顶部的不同方法数。
python爬楼梯递归
Python实现爬楼梯的递归算法可以参考以下代码:
```python
def climbStairs(n):
if n <= 2:
return n
else:
return climbStairs(n-1) + climbStairs(n-2)
```
其中,`n`表示楼梯的阶数,函数返回值为爬完楼梯的方法数。递归的思想是将问题分解成更小的子问题,直到可以直接求解为止。在本算法中,如果楼梯阶数小于等于2,那么直接返回阶数;否则,将问题分解为爬完n-1阶楼梯和n-2阶楼梯的方法数之和,通过递归求解子问题最终得到答案。