热心网友dfdf 2022-05-06 16:51 采纳率: 95.2%
浏览 37
已结题

为什么递归函数在达到终止条件时会反弹?

比如终止条件当n=1时,return1。
为什么在return1之后要出现反弹,然后回到原来所要求的值。
递归函数的本质就是自己调用自己。我想知道在自己调用自己的同时为何会产生递进和返回两种不同的功能?
既然是调用就一调到底。怎么理解通过调用,同时实现递进和返回两个功能的?

  • 写回答

2条回答 默认 最新

  • A-Chin 2022-05-06 16:59
    关注

    n==1吧,把代码贴出来,我们看看代码


    对于楼主 “怎么理解通过调用,同时实现递进和返回两个功能的?” 这句话的回答:

    执行递归函数将反复调用其自身,每调用一次就进入新的一层,当最内层的函数执行完毕后,再一层一层地由里到外退出。

    当递归进入到最内层的时候,递归“进”的这个过程就结束了,就开始逐层退出了,也就是逐层执行 return 语句,也就是下面回复中提到的 U 字型

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月14日
  • 已采纳回答 5月6日
  • 创建了问题 5月6日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效