如果在一个函数的内部调用自己本身,那么这个函数就叫做递归函数
1 def calc(n): 2 print(n) 3 if int(n/2) > 0: 4 return calc(int(n/2)) 5 6 7 calc(10) 8 9 输出结果: 10 10 11 5 12 2 13 1
递归函数的特性:
1、必须一个明确的结束条件
2、每次进入更深一层递归时,问题规模(数量或者值)要比上一次递归要有所减少
3、递归效率不高,递归层级过多容易造成栈溢出
4、递归层级最多是999次