Python 遞歸函數小結 ...
1 # def fat(n): 2 # result = 1 3 # for i in range(2,n+1): 4 # result = result * i 5 # return result 6 # print(fat(5)) 7 # 8 # 9 # def digui(x): 10 # if x ==1: 11 # return 1 12 # 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 a 29 # return feibonaqidigui(a-1)+feibonaqidigui(a-2) 30 # print(feibonaqidigui(8)) 31 # 32 # ''' 33 # 遞歸特性: 34 # 1.必須有一個明確的結束條件 35 # 2.每次進入更深一層遞歸時,問題規模相比上次遞歸有所減少 36 # 3.效率不高,遞歸層次過多會導致棧溢出 37 # '''