这种双层递归是怎么运作的?

def g(y):

      if y==0:

          return

       print(y)

        g(y-1)

        print(y)

        g(y-1)

就是每一层递归调用下一个数两次

比如g(3)中调用g(2)两次。

g(2)中调用g(1)两次。

g(1)中调用g(0)两次。g(0)中if y==0:就直接 return

递归调用过程是

g(3)

    g(2)

        g(1)

            g(0)

            g(0)

        g(1)

            g(0)

            g(0)

 

    g(2)

        g(1)

            g(0)

            g(0)

        g(1)

            g(0)

            g(0)

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632