天天看點

遞歸最大深度

題外話:由于遞歸深度可控,一般寫類似遞歸的方法時盡量使用疊代器,例如Fibonacci數列,在python進階中我會把疊代器實作Fibonacci數列的方法貼出來,而不是用遞歸。

遞歸深度盡量不去修改,用起來也會很繞。下面我貼出來如何測試出本機遞歸深度:

def func(num):
    if num == 1:
        return 1
    else:
        return num * func(num-1)
print(func(998))       # 這台機子的遞歸最大深度998,這裡數字自己在997-999之間修改,不同機器預設的遞歸深度不同