递归(recursion):程序调用自身的编程技巧称为递归。使用递归能够以少量的程序描述需要多次计算的问题,很大程度的减少代码的行数,但是递归的效率比较低。
对于n的一个阶乘,不采用递归(python):
def jie_c(n):
m=1
for i in range(1,n+1):
m=m*i
return m
print(jie_c(5))
采用递归:
def jie_c(n):
if n == 1:
return 1
return n * jie_c(n - 1) #调用函数自身
print(jie_c(5))
使用递归需要注意的条件:
1.递归出口(终止递归的条件)
2.递归表达式(规律)