ye_lin_ 2023-12-22 16:37 采纳率: 0%
浏览 13

递归好难啊!根本看不明白

这个递归怎么算呀?怎么想都不对,搜了一些例题但是也算不出来,啊啊

img

img

  • 写回答

3条回答 默认 最新

  • Bianca1 2023-12-22 17:09
    关注
    1. fun(3) 打印 3 ->调用第一个 fun(3 - 1)。 3
    2. fun(2) 打印 2 -> 调用第一个 fun(2 - 1)。 3 2
    3. fun(1) 打印 1 ->调用第一个 fun(1 - 1) ,此时n > 0,不会打印,退回上一层( 第2步的第二个fun(2 - 1) ),再次打印1 ,后面fun(0) 不打印。 3 2 1 1
    4. 执行完后,继续退回上一层,也就是 fun(3)的第二个fun (3 - 1)。重复 2-3步骤,打印出 2 1 1 最终:3 2 1 1 2 1 1

    大致思想就是:函数会一直深入到最底层(最后一个符合条件的调用),然后逆向返回到上一层,直到回到最初的调用位置。

    评论 编辑记录

报告相同问题?

问题事件

  • 请采纳用户回复 12月26日
  • 创建了问题 12月22日

悬赏问题

  • ¥15 Windows Script Host 无法找到脚本文件"C:\ProgramData\Player800\Cotrl.vbs”
  • ¥15 matlab自定义损失函数
  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图