首页 > 文章列表 > python尾递归优化如何实现

python尾递归优化如何实现

python尾递归
391 2022-08-07

说明

1、尾递归是指在函数返回时调用自身,return语句不能包含表达式。

2、通过这种方式,编译器或解释器可以对尾递归进行优化,从而使递归本身仅占用一个栈帧,而不会发生栈溢出。

实例

def fact(n):
    return fact_iter(n, 1)
 
def fact_iter(num, product):
    if num == 1:
        return product
    return fact_iter(num - 1, num * product)

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。