C++ 迭代与递归 浅析

向右看齐 2022-08-02 14:47 560阅读 0赞

【什么是递归】

递归即函数自身重复调用。

使用递归要注意的有两点:

1)递归就是在过程或函数里面调用自身;

2)在使用递归时,必须有一个明确的递归结束条件,称为递归出口。

递归分为两个阶段:

1)递推:把复杂的问题的求解推到比原问题简单一些的问题的求解;

2)回归:当获得最简单的情况后,逐步返回,依次得到复杂的解。

【什么是迭代】

利用变量的原值推算出变量的一个新值。如果递归是自己调用自己的话,迭代就是A不停的调用B。

【递归与迭代的区别】

递归及函数调用本身;迭代即循环,循环体中存在自变。

【代码解析】

  1. //这是递归
  2. int funcA(int n)
  3. {
  4. if(n > 1)
  5. return n+funcA(n-1);
  6. else
  7. return 1;
  8. }
  9. //这是迭代
  10. int funcB(int n)
  11. {
  12. int i,s=0;
  13. for(i=1;i<n;i++)
  14. s+=i;
  15. return s;
  16. }

这里递归,即 funA 自身调用;

这里的迭代,即 funB 不断的循环调用 s ,使得 s 自变;

发表评论

表情:
评论列表 (有 0 条评论,560人围观)

还没有评论,来说两句吧...

相关阅读