迭代与递归区别

 实际上,迭代与递归都是属于循环的一种。

简单地说,递归是重复调用函数自身实现循环。迭代是函数内某段代码实现循环,而迭代与普通循环的区别是:循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。从以下两组代码中可以看出迭代与递归的区别:

递归方法:

int func(int n)  
{  
    if(n > 1)  
       return n+func(n-1);  
    else   
       return 1;  
}  

迭代方法(注意与普通循环的区别):

1 int func(int n)  
2 {  
3     int i,s=0;  
4     for(i=1;i<n;i++)  
5        s+=i;  
6     return s;  
7 }  
原文地址:https://www.cnblogs.com/wangkundentisy/p/4332110.html