如何用PYTHON的递归算法表示阶乘
1、打开JUPYTER NOTEBOOK,新建一个空白的PY文档。

2、n! = 1 x 2 x 3 x ... x n
这个是阶乘factorial的表示法

3、def factorial(n):
我们可以运用函数来定义这个阶乘。

4、def factorial(n):
我们要理解n! = n * (n - 1)!

5、def factorial(n):
return n * factorial(n - 1)
这里设置一下返回的数值。

6、def factorial(n):
return n * factorial(n - 1)
factorial(3)
这里出错了,因为我们没有设置暂停的条件。

7、def factorial(n):
if n == 1:
return 1
return n * factorial(n - 1)
factorial(3)
增加一个条件就可以运行正确了。

8、def factorial(n):
if n == 1: #基线条件
return 1
return n * factorial(n - 1) #递归条件
factorial(3)
这里要区分一下两个条件的作用。

9、def factorial(n):
if n == 1:
return 1
return str(n) + " * " + str(factorial(n - 1))
factorial(3)
字符串的表示方法更加清晰。

10、'''
factorial(3)
3 * factorial(3 - 1)
3 * factorial(2)
3 * 2 * factorial (2 - 1)
3 * 2 * factorial (1)
3 * 2 * 1
'''
这里是实际运行的情况。
