递归是一种解决问题的方法,其基本思路是把原问题分解为一系列的子问题,子问题继续分解直至子问题足够简单并能够当即解决。一般来讲递归包含一个函数调用本身。算法
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. 递归函数必须调用自身(调用参数的值不同).函数