您現在的位置是:首頁 >精選問答 > 2023-10-17 01:12:20 來源:
遞歸算法的經典例子(遞歸算法)
導讀 大家好,我是小夏,我來為大家解答以上問題。遞歸算法的經典例子,遞歸算法很多人還不知道,現在讓我們一起來看看吧!1、和迭代差不多,只是...
大家好,我是小夏,我來為大家解答以上問題。遞歸算法的經典例子,遞歸算法很多人還不知道,現在讓我們一起來看看吧!
1、和迭代差不多,只是通過定義和調用函數來實現迭代
2、把事情分解成相同的步驟重復執行直到符合某一條件時結束,再反過來遞推到最初的狀態,問題就解決了
3、比如定義(用的是C語言)
4、int fun(int a)
5、{
6、 if(a==1) return 1;
7、 else
8、 {
9、 a=a*fun(a-1);
10、 return a;
11、 }
12、}
13、在fun里面再定義fun,這個fun都只做一件事,把a的內容和fun(a-1)相乘作為返回值
14、這里要有個終止條件,即a=1時返回值為1,這樣,如果我給最初的fun里的a賦值為5,第一步為5*fun(4),而執行fun(4)的結果為4*fun(3)....直到fun(2)=2*fun(1)即fun(2)=2*1,再把fun(2)代回去,得fun(3)=3*2*1,最后倒推的結果為fun(5)=5*4*3*2*1,即這個遞歸函數實現了a的階乘fun(a)=a!
15、夠詳細了吧,覺得好的話給我加分吧 ^_^
本文到此講解完畢了,希望對大家有幫助。