自学python第二十一天递归函数

北京皮肤科医院哪个好 http://m.39.net/pf/a_4322698.html

DAY.21

每天学习一点python-第二十一天

递归函数:如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就是递归函数。

判断是不是递归函数条件:

①调用自身。

②递归函数必须有一个结束条件,否则递归无法结束会一直递归下去,直到到达最大递归深度报错。

实现阶乘运算:n!=1×2×3×…×n

例1:

defjc(n):

result=1

foriteminrange(1,n+1):

result*=item

pass

returnresult

print(jc(3))

输出:6

例2:用递归方式实现

defJc(n):

ifn==1:#结束条件

return1

else:returnn*Jc(n-1)#调用自身

passprint(Jc(3))#递归调用

输出:6

总结

优点:逻辑简单。

缺点:容易导致栈溢出,内存资源紧张,甚至内存泄漏。

递归的逻辑很难调试、跟进。




转载请注明:http://www.aierlanlan.com/rzgz/2940.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了