递归算法

来源:互联网 发布:java编程实例及讲解 编辑:程序博客网 时间:2024/06/06 06:58
/*递归:函数调用自身1.递归中止的条件2.递归的深度不能太深,否则容易内存溢出*/package recursionDemo;import java.io.*;class RecursionDemo {public static void main(String[] args) {File dir=new File("D:/java");showDir(dir);toBinary(9);    int sum=getSum(6);System.out.println("Sum="+sum);}//递归显示所有的目录public static void showDir(File dir){File[] files=dir.listFiles();for(int i=0;i<files.length;i++){if(files[i].isDirectory())showDir(files[i]);System.out.println(files[i]);}}//递归转换成二进制public static void toBinary(int num){if(num>1)toBinary(num/2);System.out.println(num%2);}//递归求和public static int getSum(int num){if(num==1)return 1;else return num+getSum(num-1);}}

0 0
原创粉丝点击