Pythonはフィボナッチの再帰と尾の再帰計算を実現する
1900 ワード
##
def fibonacciRecursive(deepth):
if deepth == 1:
return 1
elif deepth == 2:
return 1
else:
return fibonacciRecursive(deepth - 1) + fibonacciRecursive(deepth - 2)
##
def fibonacciTailRecursive(num, ret1, rte2):
if num == 1:
return rte2
return fibonacciTailRecursive(num-1, rte2, ret1+rte2)
if __name__ == "__main__":
a = fibonacciRecursive(30)
print(a)
a = fibonacciTailRecursive(30, 0, 1)
print(a)