def fudz(n):
if n <= 2:
return 1
print("nom" * n)
return fudz(n-1) + fudz(n//2)
result = fudz(4)
有人可以一步一步地给我这个功能吗?
答案 0 :(得分:1)
这是一个递归函数,这意味着它在问题的简化实例上调用自身的实例,直到它到达已经知道答案的基本情况。请记住,对函数的任何调用都发生在它自己的堆栈帧中,因此它将拥有自己的n值。
你可以自己走一走。首先,考虑n==2
时会发生什么。然后考虑n==3
,并增加n
,直到它对您有意义为止。