看了小編編寫的遞歸函數(shù)(二),我有幾個不理解的地方:(網(wǎng)址:http://idcbgp.cn/code/5510)如何理解int getPeachNumber(int n)中的num?=?(getPeachNumber(n+1)+1)*2;以及int main()中的int?number?=?getPeachNumber(1);這兩行代碼應(yīng)該怎樣解釋?
1 回答
已采納

慕粉3491951
TA貢獻12條經(jīng)驗 獲得超0個贊
遞歸用法首先要假設(shè)你的程序已經(jīng)能實現(xiàn)相應(yīng)的功能
所以int number = getPeachNumber(1);//傳入實參1,得到第一天桃子的數(shù)量
遞歸的實現(xiàn)條件:如果一個問題可以分成幾個小問題,其中一個小問題和原來的問題本質(zhì)上一樣
遞歸的編寫一般步驟:
編寫語句描述問題的分解步驟(假設(shè)遞歸函數(shù)已經(jīng)完成)
在遞歸函數(shù)的開頭編寫分支處理無法分解的情況
上例中第n天的桃子數(shù)量其實就是第(n+1)天桃子數(shù)量+1然后*2的結(jié)果
不管哪一天都可以分解成這種情況
然后分解到第10天就無法分解了,因為第10天只有1個桃子
這樣說不知道你能清楚嗎?
- 1 回答
- 0 關(guān)注
- 1459 瀏覽
添加回答
舉報
0/150
提交
取消