python遞迴函式

2021-10-24 15:26:00 字數 1058 閱讀 1545

如果乙個函式在內部呼叫自身本身,這個函式就是遞迴函式。

題目:n! = 1 x 2 x 3 x … x n

# 利用迴圈

n = 5

for k in range(1, 5):

n = n * k

print(n) # 120

​# 利用遞迴

def factorial(n):

if n == 1:

return 1

return n * factorial(n - 1)​​

print(factorial(5)) # 120

120120

題目:斐波那契數列 f(n)=f(n-1)+f(n-2), f(0)=0 f(1)=1

# 利用迴圈

i = 0

j = 1

lst = list([i, j])

for k in range(2, 11):

k = i + j

i = j

j = k

print(lst)

# [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

​# 利用遞迴

def recur_fibo(n):

if n <= 1:

return n

return recur_fibo(n - 1) + recur_fibo(n - 2)​​

lst = list()

for k in range(11):

print(lst)

# [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

【例子】設定遞迴的層數,python預設遞迴層數為 100

import sys

​sys.setrecursionlimit(1000)

python遞迴函式例項 python遞迴函式

python遞迴函式 什麼是遞迴?遞迴,就是在函式執行中自己呼叫自己 示例 def recursion n 定義遞迴函式 print n 列印n recursion n 1 在函式的執行種呼叫遞迴 recursion 1 呼叫函式 這個函式在不斷的自己呼叫自己,每次呼叫n 1,看下執行結果 998t...

python靜態遞迴函式 python遞迴函式

一 遞迴的定義 1.什麼是遞迴 在乙個函式裡在呼叫這個函式本身 2.最大遞迴層數做了乙個限制 997,但是也可以自己限制 1 deffoo 2 print n 3 n 1 4 foo n 5 foo 1 驗證997 3.最大層數限制是python預設的,可以做修改,但是不建議你修改。因為如果用997...

python靜態遞迴函式 python 遞迴函式

前言 本篇關於遞迴基本借鑑下面部落格講解加入自己理解。1.遞迴函式定義 如果乙個函式在函式內部呼叫自己,那這個函式就是遞迴函式。如 defsum arg,stop print arg if arg arg arg sum arg,stop sum 1,20 2.遞迴的特性 1 必須有乙個明確的結束條...