/**
递归算法:方法本身调用自己
1、递归必须要有出口
2、递归内存消耗大,容易发生内存溢出
3、层次调用越多,越危险
*/
public class Test38 {
public static void main(String[] args) {
int jiecheng = jiecheng1(10);
System.out.println(jiecheng);
int jiecheng2 = jiecheng2(10);
System.out.println(jiecheng2);
}
//递归算法求得10的阶乘
public static int jiecheng2(int num){
if(num==1)return 1;
return num*jiecheng2(num-1);
}
//普通循环求得10的阶乘:10*9*8*7...*1
public static int jiecheng1(int num){
int i = num-1;
int result = num;
//do..while循环 会至少执行一次循环体
do{
result=result*i;
i--;
}while(i>1);
return result;
}
}
递归算法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...