數據結構與算法之遞歸(C++)

   遞歸,是我們編程時會用到的解決方法,他能讓我們的程序變得簡潔,並且能夠實現我們想要的效果,相對比迭代來說,遞歸會更加的直接,而我們所說的迭代就是我們說的循環,他能實現我們用遞歸做的事情,遞歸,通俗的來說就是自己調用自己,一直調用自己的方法,去實現我們想要的效果,下面用程序說明一下

程序如下:

1 #include<iostream>
 2 
 3 using namespace std;
 4 
 5 int factorial(int n);
 6 int iterite(int n);
 7 
 8 int main()
 9 {
10     int n = 5;
11     int result,result1;
12     for(int i=0; i<=n; i++)
13     {
14         result = factorial(i);
15         cout <<  i << "!=" << result << endl;
16     }
17     result = factorial(n);
18     result1 = iterite(n);
19     cout << result << endl;
20     cout << result1 << endl;
21     return 0;
22 }                                                                                      
23 
24 //遞歸
25 int factorial(int n)
26 {
27     if(n == 0)
28         return 1;
29     else 
30         return n*factorial(n-1);
31 }
32 
33 //迭代
34 int iterite(int n)
35 {
36     int num=1;
37     for(int i=n; i>0; i--)
38         num = num*i;
39     return num;
40 }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章