Java遞迴演算法的使用

好程式設計師發表於2020-07-20

  好程式設計師Java 培訓分享 Java 遞迴演算法的使用, 1 java 遞迴演算法基本思路, Java 遞迴演算法是基於 Java 語言實現的遞迴演算法。遞迴演算法是一種直接或者間接呼叫自身函式或者方法的演算法。遞迴演算法實質是把問題分解成規模縮小的同類問題的子問題,然後遞迴呼叫方法表示問題的解。遞迴往往能給我們帶來非常簡潔非常直觀的程式碼形式,從而使我們的編碼大大簡化,然而遞迴的思維確實跟我們的常規思維相逆的,通常都是從上而下的思維問題,而遞迴趨勢從下往上的進行思維。

  2 java 遞迴演算法解決問題的特點

  遞迴就是方法裡呼叫自身

  在使用遞迴策略時,必須有一個明確的遞迴結束條件,稱為遞迴出口

  遞迴演算法程式碼顯得很簡潔,但遞迴演算法解題的執行效率較低。所以不提倡用遞迴設計程式。

  在遞迴呼叫的過程中系統為每一層的返回點、區域性量等開闢了棧來儲存。遞迴次數過多容易造成棧溢位等,所以一般不提倡用遞迴演算法設計程式。

  在做遞迴演算法的時候,一定把握出口,也就是做遞迴演算法必須要有一個明確的遞迴結束條件。這一點是非常重要的。其實這個出口就是一個條件,當滿足了這個條件的時候我們就不再遞迴了。

  3 java 遞迴演算法程式碼示例:

  public class Factorial {

  //this is a recursive function

  int fact(int n){

  if (n==1) return 1;

  return fact(n-1)*n;

  }

  }

  public class TestFactorial {

  public static void main(String[] args) {

  // TODO Auto-generated method stub

  Factorial factorial=new Factorial();

  System.out.println("factorial(5)="+factorial.fact(5));

  }

  }


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2705614/,如需轉載,請註明出處,否則將追究法律責任。

相關文章