遞歸是很多算法都會(huì)用到的一種編程方法,而要想熟練的掌握遞歸,需要抓住兩個(gè)要點(diǎn),一個(gè)是基線條件,一個(gè)是遞歸條件,由于遞歸函數(shù)調(diào)用自己,所以編寫的時(shí)候容易出錯(cuò),進(jìn)而導(dǎo)致無(wú)限循環(huán)。所以每一個(gè)遞歸函數(shù)都要包含兩點(diǎn),遞歸條件指的就是函數(shù)調(diào)用自己,而基線條件則指的是函數(shù)不在調(diào)用自己。從而避免無(wú)限循環(huán)。
下面展示一個(gè)簡(jiǎn)單的遞歸方法。比如使用遞歸的方式來(lái)實(shí)現(xiàn)斐波那契數(shù)列:(斐波那契數(shù)列就是這個(gè)數(shù)列從第3項(xiàng)開始,每一項(xiàng)都等于前兩項(xiàng)之和。)
publicstaticintfbnqsl(intnum){
if(num==1||num==2){//第一第二位的返回值為1
return1;
}else{//從第三位以后的值,等于前兩位數(shù)值相加
returnfbnqsl(num-2)+fbnqsl(num-1);
}
}
以上就是長(zhǎng)沙牛耳教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)學(xué)習(xí):java怎么實(shí)現(xiàn)遞歸函數(shù)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
Java基礎(chǔ)學(xué)習(xí)