黑馬程式設計師 java中的遞迴原理

2021-07-03 06:45:44 字數 1138 閱讀 8953



遞迴是基於:方法可以自己呼叫自己;並且是在方法內部呼叫自己

一定要有結束條件,否則持續執行,形成了死遞迴

遞迴的次數不能太多,都則就會造成堆疊溢位

構造方法不能遞迴呼叫,但是可以迴圈呼叫(就是呼叫另乙個構造方法,哪乙個構造方法再呼叫此構造方)

遞迴就是迴圈呼叫,每次呼叫,都把初始條件封裝處理好向下傳遞。

解決思想就是:本月的兔子對數等於上個月的兔子對數和上上個月的兔子對數之和。

方法一:使用陣列:陣列的長度代表要計算的最終的"月數",每個元素,就是當月的兔子的對數

int intarray=new int[20];

intarray[0]=1;

intarray[1]=1;

for(int i=2;i

★★★方法二:使用兩個變數

月份:1   2   3   4   5   6

對數;1   1   2   3   5   8

變數 a=0 a=1 a=1 a=2 a=3 a=5

b=1 b=1 b=2 b=3 b=5 b=8

其中b作為每月兔子數,a作為乙個臨時變數

int a=0;

int b=1;

for(int i=1;i<=20;i++)//此方法不好,思想不好理解。但是還是可以很好的計算

方法三:使用遞迴方法

public int fib(int month)

return fib(month-1)+fib(month-2);//呼叫方法計算上乙個月的和上上月的

}

public class demo 

private static void find(file file) else if(f.isdirectory())

}}}

public class demo 

private static void find(file file) else if (f.isdirectory())

}file.delete();//經過前面的過程,檔案目錄裡的檔案都被刪除了,可以刪除此目了

}}

黑馬程式設計師 Java 多執行緒

asp.net android ios開發 net培訓 期待與您交流!一.執行緒的定義 1 就是應用程式有多條執行路徑。程序 就是正在執行的程式。執行緒 就是程序的執行路徑,執行單元。2.執行緒與程序的區別 乙個程式啟動至少會有乙個程序,而乙個程序中至少有乙個執行緒.執行緒是程序的乙個實體,是cpu...

黑馬程式設計師 java基礎 封裝

asp.net unity開發 net培訓 期待與您交流!封裝表示吧資料項和方法隱藏在物件內部,在類定義中用private關鍵字來實現封裝。封裝有什麼好處?用private把類的細節與外界隔離起來,從而實現資料項和方法的隱藏,而要訪問這些資料項和方法唯一的途徑就是通過類本身,類才有資格呼叫它所擁有的...

黑馬程式設計師 Java 學習筆記

filewriter 建立乙個filewriter物件,該物件一被初始化就必須明確被操作的檔案,而且該檔案會被建立到指定的目錄下。如果該目錄下已有同名檔案,將被覆蓋。下面的例子是將客戶端的檔案拷貝到伺服器上 客戶端 socket s newsocket 1.1.1.1 10000 定義客戶端的套接字...