我正在练习用while循环替换递归,我坚持以下问题.
如果你一次只能走1或2楼梯,你可以走多长度n的楼梯?
递归解决方案非常简单:
def stairs(n):
if n <= 1:
return 1
else:
return stairs(n-2) + stairs(n-1)
Run Code Online (Sandbox Code Playgroud)
我觉得迭代程序的结构应该是这样的:
def stairs_iterative(n):
ways = 0
while n > 1:
# do something
ways +=1
return ways
Run Code Online (Sandbox Code Playgroud)
但我不知道我需要把什么放在#do中.有人能帮我吗?伪代码很好!