我靠 学了有一段时间了 老师从没说过递归
大虾们解释下呀
顺便问下 类 子类 内部类 还有什么类 他们如何定义?比如内部类 是在类的封口前里面 子类在哪里?子类和父类的继承关系是什么谁有资料V下呗??
还有数组arrays.sort方法是什么排序?学C#的时候不是有冒泡嘛?后来老师提了一个双向快速排序 那么arrays.sort是属于什么排序呢?初学者呀。
谢谢大虾们勒!

解决方案 »

  1.   

    递归简单的说就是自身调用自身的方法 一会给你写个递归的小例子  建议你看一本书 名字好像是 你必须知道的256个java问题 都是一些小的知识点  一会附上例子
      

  2.   

    int f(int n)
    {
     int count=0;
     int i;
     if(n==1)
     count++;
     else
     {
     for(i=2;i<=n;i++)
     if(n%i==0)
     count=count+f(n/i);
     }
     return(count);
    }
    这是一个整数的分解问题  里面用到了递归  这是用c写的  你可以试着改写一下  有助于你理解递归
      

  3.   


    public class Test4 {
    public static void main(String[] args) {
    System.out.println(new Test4().factorial(5)); }

    private int factorial(int d){
    if(d == 2){
    return d;
    } else {
    return d *factorial(d-1);
    }
    }
    }
    刚才聊了会天~
      

  4.   

    递归就是自己调用自己  如:f(0)=1,f(1)=1,f(2)=f(0)+f(1),....,f(n)=f(n-2)+f(n-1)
      

  5.   

    理论上,任何递归都可以用循环代替。因为递归代码一边难于维护,所以能简单的用循环实现的算法就不推荐用递归。我做过很多这样的例证,比如ZIP压缩算法等,都可以用递归实现的同时用循环来改写。你自己可以有意识的练习一下。