这个是寻求以1或者2的步伐爬台阶最终有多少种方法
今日长进:
1,学会用递归函数,其实特别像数学中的归纳解释法,不知道是不是这个名词了,一定要记住赋初值,就是对于1或者2个台阶这种情况给予结果
2,对于最终的结果要给与一个出口,就是return
3,对于递归函数,一定要搞清楚递归的是当前状况的前一步的情况,不要想复杂
我自己有用一个递归函数,但是最终leetcode并未通过:
def stepCount(n): if n == 1: return 1 if n == 2: return 2 else: step = stepCount(n - 2) + stepCount(n-1) return step n = 5 step = stepCount(n) print(step)leetcode中有一个solution:思想是一样的,但是人家就是可以通过
n= 5 res = [0 for i in range(n)] res[0],res[1] = 1,2 for i in range(2,n): res[i] = res[i-1] + res[i-2] print(res[n-1])