递归的概念,阶乘, 斐波那契列数:

来源:互联网 发布:linux vi移到行尾 编辑:程序博客网 时间:2024/06/01 09:12

9 递归的概述:

5的阶乘。5= 5*4*3*2*1//120

递归:把大问题拆成很多的小问题,然后再把小问题拆成更多的小问题。

当我们把很多小问题解决了,那么小问题就解决了。随着小问题的解决,大问题也就解决了(在方法本省不断的调用方法自己)

递归注意事项:递归一定要有出口,内存溢出

递归次数不宜过多,内存溢出

默认注意事项(一定要有规律猜可以使用递归)

求一个数的阶乘:

Public static int jiechengint n{

ifn ==1{

   Return 1;

}else{

Return  n *jiecheng(n-1);

}

10 递归求5阶乘图解:

 图解在附件

11 使用Debug分析递归算法执行流程:

方法调用方法本身,会在内存中生成很多歌自己的方法,知道找到出口之后,在挨个执行生成的多个方法,然后执行过的方法消失。(先生成多个相同的方法,在倒着执行多个相同的方法

12 斐波那契列数:

用递归的方法 算斐波那契列数的兔子数

Public static void mainString【】args{

Int result = method(20);

}

Public static int method(int x){

If(x==1){

Return 1;

}else if(x==2){

 Return 2;

}else{

Return method(x-1)+method(x-2);

}

}

阅读全文
1 0
原创粉丝点击