Java經典兔子問題


題目:古典問題:3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?

分析:首先我們要明白題目的意思指的是每個月的兔子總對數;假設將兔子分為小中大三種,兔子從出生后三個月后每個月就會生出一對兔子,

那么我們假定第一個月的兔子為小兔子,第二個月為中兔子,第三個月之后就為大兔子,那么第一個月分別有1、0、0,第二個月分別為0、1、0,

第三個月分別為1、0、1,第四個月分別為,1、1、1,第五個月分別為2、1、2,第六個月分別為3、2、3,第七個月分別為5、3、5……

兔子總數分別為:1、1、2、3、5、8、13……

 

於是得出了一個規律,從第三個月起,后面的兔子總數都等於前面兩個月的兔子總數之和,即為斐波那契數列。

Java代碼:

 

 

很經典的一個遞歸算法的例子。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM