什麼叫遞迴

2020-09-29 18:00:59

遞迴:

1、要呼叫自己本身;

2、要有一個趨於終止的條件。

(推薦教學:)

下面以一個求階乘的例子簡單介紹一下:

public class recursion {
    public static int fac(int n) {
        if(n == 1){
            return 1; //終止條件
        }
        return n * fac(n-1); //呼叫自身
    }
    public static void main(String[] args) {
        System.out.println(fac(5));
    }
}
// 執行結果: 120

遞迴過程(第一個梯度)

f9bf14f50e1909b29204f2c7b405dcc.png

第二個維度: 方法的呼叫,需要在棧上開闢記憶體

棧是先進後出的。

先呼叫 fac(5),逐步呼叫 fac(4)…… 直到終止條件。

壓棧 的過程就是 遞 的過程。

0a8b8c59e4b0aae2c7f10d2dd517027.png

只要遇到終止條件 return,函數結束,逐步返回 fac(n) 的值。

出棧 的 過程就是 歸 的過程。

c0cf38352568f5173d01d5a8ad040f9.png

相關推薦:

以上就是什麼叫遞迴的詳細內容,更多請關注TW511.COM其它相關文章!