在Python中,遞歸是一種常用的編程技巧,它允許一個函數調用自身來解決問題。要實現遞歸,你需要定義一個基本情況(base case)和一個遞歸情況(recursive case)。基本情況是函數處理的最簡單的問題,它可以直接得到答案,而遞歸情況則是函數將問題分解為更小的子問題,然后調用自身來解決這些子問題。
以下是一個使用遞歸實現的階乘函數示例:
def factorial(n):
# 基本情況:0的階乘等于1
if n == 0:
return 1
# 遞歸情況:n的階乘等于n乘以(n-1)的階乘
else:
return n * factorial(n - 1)
在這個例子中,factorial
函數首先檢查基本情況(n == 0
),如果滿足,則返回1。如果不滿足基本情況,函數將問題分解為更小的子問題(n * factorial(n - 1)
),然后調用自身來解決這些子問題。這個過程會一直持續到基本情況被滿足為止。