java递归问题! 20

 我来答
不想起名字了2333
2011-09-09 · TA获得超过2447个赞
知道大有可为答主
回答量:1931
采纳率:50%
帮助的人:1857万
展开全部
我晕~~~/*重点: int static f(int n)方法 每次只会返回一个值; */

这是斐波那契数列 OK? 1,1,2,3,5,8,13,21,33,54…………
F(n) = F(n-1) + F(n-2);
“问题1:f3等于2现在,是直接返回给f4是要判断了才返回给f4?”
F(n) = F(n-1) + F(n-2) --》F(4) = F(3) + F(2) ,现在f3=2,已经得到F(3)的值就直接返回给F(4)啊,接下来判断F(2),直接返回F(2)=1,所以F(4) = F(3) + F(2) =2+1=3;

问题2:f4为什么还要判断f2呢? /*重点: int static f(int n)方法 每次只会返回一个值; */
因为 F(4) = F(3) + F(2) ,得到F(3)的值,并不能得到F(2)的值
(虽然会调用F(2)的值,但是F(2)的值没有在方法F(int n)返回,
所以F(2)的值还是空,因为你代码的 int static f(int n)方法 每次只会返回一个值;)
调用一次该方法,只能返回一个值F(3),但是在递推式“F(4) = F(3) + F(2)”中的F(2)的值没得到,所以要再次调用F(2),返回一个值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
iorickchenkai
2011-09-12 · 超过22用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:66.2万
展开全部
看不见,这个链接。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式