Java遞歸算法

jopen 9年前發布 | 3K 次閱讀 Java

遞歸算法 其實就是程序的自身調用。在做遞歸算法的時候,必須要有一個明確的遞歸結束條件,
當滿足了這個條件的時候就不再遞歸了。


下面用Java實現兩個基礎的遞歸算法

/**

  • 求1+2+3+...+n的和 */ class Recurrent { int sum = 0; int flag = 1;

    public void count(int number) {

     sum += flag;
     flag++;
     if (flag <= number) {
         count(number);
     }
    
    

    } }

public class T {

public static void main(String[] args) {
    Recurrent r = new Recurrent();
    r.count(5);
    System.out.println(r.sum);
}

}</pre>

/**

  • 求n的階乘 */ class Factorial { public long mul(int n) {
     if (n <= 1) {
         return 1;
     } else {
         return n * mul(n - 1);
     }
    
    } }

public class T {

public static void main(String[] args) {
    Factorial fac = new Factorial();
    System.out.println(fac.mul(15));
}

}</pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!