python基礎 遞迴

2021-08-15 20:35:28 字數 999 閱讀 6696

#### 迭代

deffactorial

(n):

result = 1

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

result *= i

return result

factorial(1) # 1

factorial(5) # 120

factorial(10) # 3628800

#### 遞迴

deffactorial

(n):

if n == 1:

return

1else:

return n * factorial(n-1)

factorial(1) # 1

factorial(5) # 120

factorial(10) # 3628800

優點:

缺點:

factorial(5)                        # 第 1 次呼叫 5

5 * factorial(4) # 第 2 次呼叫 4

5 * (4 * factorial(3)) # 第 3 次呼叫 3

5 * (4 * (3 * factorial(2))) # 第 4 次呼叫 2

5 * (4 * (3 * (2 * factorial(1)))) # 第 5 次呼叫 1

5 * (4 * (3 * (2 * 1))) # 第 5 次呼叫返回

5 * (4 * (3 * 2)) # 第 4 次呼叫返回

5 * (4 * 6) # 第 3 次呼叫返回

5 * 24

# 第 2 次呼叫返回

120# 第 1 次呼叫返回

python 基礎 模組 遞迴 )

模組 是乙個命名空間,也是乙個模組物件 補充 容器 資料的封裝 函式 語句的封裝 類 方法和屬性的封裝 含義 模組是乙個包含所有你定義的函式和變數的檔案,其字尾名是.py。模組可以被別的程式引入,以使用該模組中的函式等功能。這也是使用 python 標準庫的方法。模組就是程式 作用 1封裝 2實現 ...

Python基礎 遞迴函式

通俗一點來說在函式的內部,直接去呼叫其他函式的方式叫做函式的巢狀.但是,如果這個函式呼叫的是自身呢?這個樣子的函式自身就屬於遞迴函式 經典例項 階乘自身就能用遞迴函式來表達出來 1 1 2 2 1 3 3 2 1 n n n 1 2 1以上是簡單直接說明了階乘的表達,接下來至二級用函式來進行直接表達...

python基礎程式設計 遞迴

遞迴的通俗理解 遞迴就是在函式內部呼叫自己的函式被稱之為遞迴 def recursion n v n 2 地板除,保留整數 print v 每次求商,輸出商的值 if v 0 當商為0時,停止,返回done return done v recursion v 遞迴呼叫,函式內自己呼叫自己 recur...