递归是一种解决问题的方法,其基本思路是把原问题分解为一系列的子问题,子问题继续分解直至子问题足够简单并可以立即解决。通常来说递归包含一个函数调用自己。
def listsum(numList):
if len(numList) == 1:
return numList[0]
else:
return numList[0] + listsum(numList[1:])
print(listsum([1,3,5,7,9]))
1. 一个递归算法必须有基本状态(达到这个状态时递归函数停止递归)
2. 递归必须改变其状态并向基本状态移动
3. 递归函数必须调用自身(调用参数的值不一样).