遞歸算法經(jīng)典實(shí)例 如何對(duì)遞歸進(jìn)行理解?
如何對(duì)遞歸進(jìn)行理解?既然你想用簡(jiǎn)單的白話來(lái)解釋遞歸算法,我就給你解釋一下,確保你能理解。有個(gè)熟悉的故事,正好可以解釋遞歸。這個(gè)故事不斷地調(diào)用自己,遞歸是一個(gè)函數(shù)多次調(diào)用自己。不同的是遞歸不能像這個(gè)故事
如何對(duì)遞歸進(jìn)行理解?
既然你想用簡(jiǎn)單的白話來(lái)解釋遞歸算法,我就給你解釋一下,確保你能理解。
有個(gè)熟悉的故事,正好可以解釋遞歸。
這個(gè)故事不斷地調(diào)用自己,遞歸是一個(gè)函數(shù)多次調(diào)用自己。不同的是遞歸不能像這個(gè)故事那樣多次調(diào)用自己。遞歸必須有終止條件,它將在多次調(diào)用后終止。
這個(gè)解釋很口語(yǔ)化。
如何用遞歸的方法計(jì)算并輸出斐波那契數(shù)列的第n項(xiàng)?
。讓我分別談?wù)勥@些方法
雖然它們也是遞歸的,但是有不同的方法來(lái)編寫它們。例如,有兩種編寫方法
遞歸方法更直接。通過(guò)數(shù)組FIB[n]=FIB[n-1]FIB[n-2],直接遞歸方法是可以的。
可以通過(guò)以下公式直接求解,但缺點(diǎn)是可能會(huì)失去精度。
時(shí)間復(fù)雜度為O(log(n))。