| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 454 人关注过本帖
标题:请看图,问题在图中?
只看楼主 加入收藏
yangte
Rank: 1
等 级:新手上路
帖 子:163
专家分:0
注 册:2006-10-2
收藏
 问题点数:0 回复次数:6 
请看图,问题在图中?
图片附件: 游客没有浏览图片的权限,请 登录注册


上图画红线的地方,请问是什么意思,俺看不懂,先谢了。。

[此贴子已经被作者于2006-10-22 11:54:50编辑过]

2006-10-22 11:53
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
递归

可惜不是你,陪我到最后
2006-10-22 12:33
苦中乐
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2006-9-4
收藏
得分:0 
这是中递归算法
也就是
n=1或2是 c=1;
n=3时:c=f(3-1)+f(3-2)=f(2)+f(1)=2;
n=4: c=f(4-1)+f(4-2)=f(3)+f(2)=2+1=3;
n=5: c=f(5-1)+f(5-2)=f(4)+f(3)=3+2=5;
n=6: c=f(6-1)+f(6-2)=f(5)+f(4)=5+3=8;
n=7: c=f(6)+f(5)=8+5=13;

2006-10-22 12:42
yangte
Rank: 1
等 级:新手上路
帖 子:163
专家分:0
注 册:2006-10-2
收藏
得分:0 
偶晕,递归,俺没学过,好难看懂啊,,
大哥们,1.有没有简单一的点递归例了了。
2. 还有就是 啥叫递归啊。。。
谢谢了。。。

[此贴子已经被作者于2006-10-22 13:01:11编辑过]


2006-10-22 12:56
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 
嘿嘿...有很多种方法...如果你觉得递归难理解的话...可以使用其它...
递归只是自身调用自身....有时使用递归....还是比较轻松简单的...

public static void main(String[] args){
System.out.println("循环不使用数组:" + finabocciLoop(7));
System.out.println("循环使用数组:" + finabocciArray(7));
System.out.println("使用递归方式:" + finabocciRec(7));
}

private static long finabocciLoop(int n){
int a = 1;
int b = 1;
int c = 0;
//c= a+b;
for(int i=2;i<n;i++){
c = a+b;
a = b;
b = c;

}
return c;
}

private static long finabocciArray(int n){
long[] finabo = new long[n];
finabo[0] =1;
finabo[1] =1;
for(int i=2;i<n;i++){
finabo[i] = finabo[i-1] + finabo[i-2];
}

return finabo[n-1];
}

private static long finabocciRec(int n){
long c;
if(n==1 || n==2)
c=1;
else
c=finabocciRec(n-1) + finabocciRec(n-2);
return c;
}

我的msn: myfend@
2006-10-22 13:31
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
以下是引用purana在2006-10-22 13:31:07的发言:
嘿嘿...有很多种方法...如果你觉得递归难理解的话...可以使用其它...
递归只是自身调用自身....有时使用递归....还是比较轻松简单的...

public static void main(String[] args){
System.out.println("循环不使用数组:" + finabocciLoop(7));
System.out.println("循环使用数组:" + finabocciArray(7));
System.out.println("使用递归方式:" + finabocciRec(7));
}

private static long finabocciLoop(int n){
int a = 1;
int b = 1;
int c = 0;
//c= a+b;
for(int i=2;i<n;i++){
c = a+b;
a = b;
b = c;

}
return c;
}

private static long finabocciArray(int n){
long[] finabo = new long[n];
finabo[0] =1;
finabo[1] =1;
for(int i=2;i<n;i++){
finabo[i] = finabo[i-1] + finabo[i-2];
}

return finabo[n-1];
}

private static long finabocciRec(int n){
long c;
if(n==1 || n==2)
c=1;
else
c=finabocciRec(n-1) + finabocciRec(n-2);
return c;
}

不错啊,刚学就有这个水平,对你充满信心


可惜不是你,陪我到最后
2006-10-22 13:51
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 
呵呵...谢谢 千里冰封啊...

我的msn: myfend@
2006-10-22 13:56
快速回复:请看图,问题在图中?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012990 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved