A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© MQ_H 中级黑马   /  2015-7-28 21:51  /  397 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

最近看递归,感觉跟迭代有点象但有不是迭代,感觉跟二叉树遍历有点像但有不是,那么问题来了,哪位同学能好好解释一下吗?最好图文并茂,加点代码。

1 个回复

倒序浏览
本帖最后由 wode1311 于 2015-7-29 00:33 编辑

迭代是一段代码的循环执行,同时每一次的执行结果作为下一次的初始值参与运算。而递归是重复调用函数实现自身的循环。
例如:计算1——100的和:
迭代:int  sum=0
          for(int i=1;i<=100;i++){
                     sum=sum+i;
            }
递归:int sum=getSum(100); //getSum(100)是一个函数
          public int getSum(int num){
              sum=0;
              if(num>0){
                   sum=getSum(num-1)+num;
              }
           return sum;
      }


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马