关于一道java算法题目算法分析
public class exp2
{
public static void main(String args[])
{
int i=0;
for(i=1;i<=20;i++)
System.out.println(f(i));
}
public static int f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
}
上面的是代码
问题是:有一对兔子,从出生三个月起,每个月生一对兔子,兔子从第四个月后每个月起再多生一对兔子。问每个月兔子有多少对?
为什么f函数要那样写,,求解大神帮忙分析下。。想了好久好久。。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我也知道是递归。。我是想知道为什么要那样计算。。。算法分析
你这个题目,写清楚了!我读了3边,没读懂!惭愧
回复
就是第三个月,第四个月的时候生一对兔子。第四个月以后生2对兔子
递归啊!