Python3 遞迴函式

2022-09-05 08:42:14 字數 821 閱讀 4624

1 # def

fat(n):2#

result = 13#

for i in range(2,n+1):4#

result = result * i5#

return result6#

print(fat(5))7#

8#9#

def digui(x):10#

if x ==1:11#

return 112#

return x * digui(x-1)13#

print(digui(5))14#

15#'''16

#關於遞迴的總結:17#

1.內部是自己呼叫自己18#

2.有乙個結束條件19#

3.但凡是遞迴可以寫的,迴圈都可以做20#

4.遞迴效率非常低21#

'''22#23

#24## 遞迴版本斐波那契數列25#

# 0 1 1 2 3 5 8 13 21 ...26#

def feibonaqidigui(a):27#

if a == 0 or a == 1:28#

return a29#

return feibonaqidigui(a-1)+feibonaqidigui(a-2)30#

print(feibonaqidigui(8))31#

32#'''33

#遞迴特性:34#

1.必須有乙個明確的結束條件35#

2.每次進入更深一層遞迴時,問題規模相比上次遞迴有所減少36#

3.效率不高,遞迴層次過多會導致棧溢位37#

'''

Python3 遞迴函式

1.必須有乙個明確的結束條件 2.每次進入更深一層遞迴時,問題規模相比上次遞迴都應有所減少 3.遞迴效率不高,遞迴層次過多會導致棧溢位 在計算機中,函式呼叫是通過棧 stack 這種資料結構實現的,每當進入乙個函式呼叫,棧就會加一層棧幀,每當函式返回,棧就會減一層棧幀。由於棧的大小不是無限的,所以,...

Python3 遞迴函式

在函式內部,可以呼叫其他函式。如果乙個函式在內部呼叫自身本身,這個函式就是遞迴函式。def calc n print n if int n 2 0 return n return calc int n 2 calc 10 輸出 105 21遞迴特性 1.必須有乙個明確的結束條件,最多遞迴999次 2...

Python3 遞迴函式

遞迴,就是函式在執行的過程中呼叫自己。示例 def recursion n print n recursion n 1 recursion 1 出現的效果就是,這個函式在不斷的呼叫自己,每次呼叫就n 1,相當於迴圈了。可是為何執行了900多次就出錯了呢?還說超過了最大遞迴深度限制,為什麼要限制呢?通...