注意: 单纯的递归调用时没有任何意义的。 想要递归有意义,必须遵循两个条件: - 递推: 指的是重复地执行, 每一次执行都要拿到一个更接近于结果的结果, 递推必须要有一个终止条件,否则无限递归。 - 回溯: 当递推找到一个终止条件后,开始一步一步往上回溯。 age(5) == age(4) + 2 age(4) == age(3) + 2 age(3) == age(2) + 2 age(2) == age(1) + 2 age(1) == 18 # 回溯终止的结果 #result:age(n) = age(n - 1) + 2 方式一:
def age(n):
if n == 1:
return 18
else:
return age(n-1) + 2 #age2
res=age(5)
print(res)
>>>26
方式二:#三元表达式
def age(n): 18
if n == 1
else age(n-1)+2
res=age(5)
print(res)