递归函数调用数

时间:2020-06-20 17:14:36

标签: python recursion

我是Python的初学者,我想知道如何获得递归函数调用的数量? 是2 ^ n(如果n是给定的参数)

1 个答案:

答案 0 :(得分:1)

调用次数完全取决于算法。有时它是2 ** n,但其他时候可能是n!或二次方或其他任何形式。

要计算出多少个,可以使用我的方法。某些其他用户可能会避免这样做,但是使用全局计数器是计算函数调用数量的快速简便的方法。

function_calls = 0
def fibonacci_recursive(n):
    global function_calls
    function_calls += 1
    if n == 0:
        return 1
    elif n == 1:
        return 1
    else:
        return fibonacci_recursive(n-1) + fibonacci_recursive(n-2)
ans = fibonacci_recursive(20)
print("There were",function_calls,"function calls.")
相关问题