递归代码例子:
def fun(x):
if x>0:
fun(x-1)
print(x)
fun(3)
执行结果:1,2,3
执行流程图:
思路分析:
先递归后再打印,函数的运行顺序从上到下。
(先执行递归语句,直到最后无法再传递的时候,再一步步归来。)
流程分析:
先执行fun(3)不断的进行递归操作,直到fun(0)不符合x>0,没有返回值时,再继续开始执行上次递归下面那条打印语句:
执行fun(1-1)下面的打印语句输出1,
执行fun(2-1)下面的打印语句输出2,
执行fun(3-1)下面的打印语句输出3。
最后结束整个过程。
(个人理解,如有偏差,还望指出!谢谢)