递归的工作原理的代码测试:
def cur(n):
print(n)
tmp = n
if n>0 :
n=n-1
cur(n)
print(tmp)
当输人n=5时,输出为:
5
4
3
2
1
0
0
1
2
3
4
5
可以看出,递归是一层套一层的实现的,类似于DFS的搜索方法,当一个递归条件递归到结束时,才会从结束的那一层开始层层return,之后再执行下面的语句,斐波那契数列的递归实现就是一个很好的例子(有两个递归参数,便于观察)。
递归的工作原理的代码测试:
def cur(n):
print(n)
tmp = n
if n>0 :
n=n-1
cur(n)
print(tmp)
当输人n=5时,输出为:
5
4
3
2
1
0
0
1
2
3
4
5
可以看出,递归是一层套一层的实现的,类似于DFS的搜索方法,当一个递归条件递归到结束时,才会从结束的那一层开始层层return,之后再执行下面的语句,斐波那契数列的递归实现就是一个很好的例子(有两个递归参数,便于观察)。