[英]Number of recursive function calls
我是 Python 的初学者,我想知道如何获得递归 function 调用的数量? 是 2^n 吗(如果 n 是给定的参数)
调用的数量完全取决于算法。 有时它是 2**n,但有时它可能是 n 或二次方。 或其他任何东西。
要计算它是多少,你可以使用我的方法。 这可能会被其他一些用户回避,但使用全局计数器是一种快速简便的方法来计算 function 调用的数量。
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.")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.