本文实例讲述了Python递归及尾递归优化操作。分享给大家供大家参考,具体如下:
1、递归介绍
递归简而言之就是自己调用自己。使用递归解决问题的核心就是分析出递归的模型,看这个问题能拆分出和自己类似的问题并且有一个递归出口。比如最简单的就5的阶乘,可以把它拆分成5*4!,然后求4!又可以调用自己,这种问题显然可以用递归解决,递归的出口就是求1!,可以直接返回1。用Python实现如下:
def fact(n):
if n==1:
return n
return n*fact(n - 1);
print(fact(5))
运行结果:
120
2、尾递归优化
在上面的求递归