为了账号安全,请及时绑定邮箱和手机立即绑定

不懂,好难理解

num = (getPeachNumber(n+1)+1)*2?为什么是这样,想不明白!

正在回答

2 回答

同学试着逆向思考一下,

你看, 第十天的就是getPeachNumber(10),剩一个桃子 ,

第九天的就是getPeachNumber(9)= (getPeachNumber(9+1)+1)*2,剩4个桃子【(1+1)*2=10】;

因为是先吃一半、,然后再多吃一个,所以第九天的数量就是第十天的先加上先吃掉的那个1 然后再乘以二 

num = (getPeachNumber(n+1)+1)*2递归函数调用自身 从10一直到第一天 

试着自己画画,不懂了继续问,

满意的话,点下采纳吧

4 回复 有任何疑惑可以回复我~
#1

慕码人3067912 提问者

非常感谢!
2016-09-12 回复 有任何疑惑可以回复我~
#2

慕码人3067912 提问者

谢谢同学,这个问题大致明白了;就是还有为什么这个递归函数是从10到第一天
2016-09-17 回复 有任何疑惑可以回复我~
#3

JustWannaHugU 回复 慕码人3067912 提问者

再开个问题呗~~
2016-09-17 回复 有任何疑惑可以回复我~

谢谢同学,这个问题大致明白了;就是还有为什么这个递归函数是从10到第一天

0 回复 有任何疑惑可以回复我~
#1

JustWannaHugU

刚才在玩游戏。有点晚,;就是还有为什么这个递归函数是从10到第一天这个问题你应该自己调试一边代码,递归的返回顺序和进入顺序是完全相反的,从1开始进但是到第十天才返回1,从此刻开始,逐层返回,所以表现为逆向输出啦!
2016-09-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

不懂,好难理解

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信