概述
1.阶乘
嗯,这个就是 高中还是初中学的,比如4的阶乘 4!=1x2x3x4 ,那么也就是说自己调用自己的方法,一直乘n-1一直到n=2为止。
//1.阶层
public class factorial{
public static int def(int n){
if(n>0){
if(n==1){
return n;
}else{
return def(n-1)*n;
}
}
}
public static void main (String [] args){
def(10)
}
}
2.fibonacii
a1=1,a2=1,a3=2,a4=3...也就是说an = a(n-1) +a(n-2), 输入n(数字的位置),要知道这个数字是多少,同理。用方法,只有第一位和第二位返回1其余都返回f(n-1)+f(n-2)即可。
然后f(n-1)再调用递归方法成为f(n-2)+f(n-3),直到f里的参数为1或者2停止,全部展开之后就成为多个f(1)和f(2)的和。
public class fibonacii{
public static void main(String []args){
fib(20)
}
public static int fib(int n){
if(n==1 || n==2){
return 1;
}else{
return fib(n-1)+fib(n-2);
}
}
}
3.递归访问所有文件
嗯 如题
public class RecursiveFileDemo {
public static void main(String[] args) {
getFile(new File("D://一堆奇怪的东西"));
}
public static void getFile(File file) {
File[] filelist = file.listFiles();
for (int i = 0; i < filelist.length; i++) {
if (filelist[i].isDirectory()) {
getFile(filelist[i]);
} else {
System.out.println(filelist[i].getPath());
}
}
}
}
---------------------
作者:无极之岚
来源:CSDN
原文:https://blog.csdn.net/qq_28722667/article/details/52295606
版权声明:本文为博主原创文章,转载请附上博文链接!
最后
以上就是香蕉嚓茶为你收集整理的三种经典递归的全部内容,希望文章能够帮你解决三种经典递归所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复