递归算法详解:用 Python 计算阶乘
递归算法是一种基于函数自身调用的算法,通过不断地调用自身来解决问题,直到达到终止条件为止。以下是一个简单的递归算法示例:
计算一个数的阶乘
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
解释:
这个算法的思路是:如果输入的数为1,那么直接返回1;否则,计算n乘以(n-1)的阶乘,直到n=1时停止递归。例如,输入5,将会执行以下步骤:
factorial(5) = 5 * factorial(4) factorial(4) = 4 * factorial(3) factorial(3) = 3 * factorial(2) factorial(2) = 2 * factorial(1) factorial(1) = 1
最后返回54321=120,得到5的阶乘。
原文地址: https://www.cveoy.top/t/topic/mx9K 著作权归作者所有。请勿转载和采集!