就t=f(a,n-1)这句跟下面那句不会,看不懂啊,教教孩子吧(ฅ•﹏•ฅ)
5条回答 默认 最新
- 技术专家团-小桥流水 2022-02-15 23:01关注
f是递归函数。
t=f(a,n-1)是将f的第二个参数逐渐递减,这样才能逐渐满足else的条件来终止递归。
例如,
f(a,9),n=9,n>1成立,执行if语句,t=f(a,8);
f(a,8),n=8,n>1成立,执行if语句,t=f(a,7)
f(a,7),n=8,n>1成立,执行if语句,t=f(a,6)
f(a,8),n=8,n>1成立,执行if语句,t=f(a,5)
f(a,5),n=8,n>1成立,执行if语句,t=f(a,4)
f(a,4),n=8,n>1成立,执行if语句,t=f(a,3)
f(a,3),n=8,n>1成立,执行if语句,t=f(a,2)
f(a,2),n=8,n>1成立,执行if语句,t=f(a,1)
f(a,1),n=8,n>1不成立,执行else语句,返回a[0],也就是t=f(a,1)=a[0]
逐级带回
t=f(a,1)=a[0],此时n=2,执行return t>a[1]?t:a[1]
也就是判断t(此时t=a[0])是否大于a[1],并返回两者中的较大者,假设为x0(x0是a[0]、a[1]中的大数)
t=f(a,2)=x0,此时n=3,执行return t>a[2]?t:a[2]
也就是判断t(此时t=x0)是否大于a[2],并返回两者中的大者,假设为x1
依次类推,逐级往回带入本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 pcl运行在qt msvc2019环境运行效率低于visual studio 2019
- ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
- ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
- ¥100 华为手机私有App后台保活
- ¥15 sqlserver中加密的密码字段查询问题
- ¥20 有谁能看看我coe文件到底哪儿有问题吗?
- ¥20 我的这个coe文件到底哪儿出问题了
- ¥15 matlab使用自定义函数时一直报错输入参数过多
- ¥15 设计一个温度闭环控制系统
- ¥100 rtmpose姿态评估