迭代是普通的循环。 例:求从1加到10 int sum=0 for(int i=0;i<= 10;i++){ sum=sum+i; } 递归是指一个函数直接或间接调用自己。 好比:从前有个庙庙里有个大和尚和小和尚,大和尚叫小和尚讲故事,小和尚说从前有个庙庙里有个大和尚和小和尚,小和尚叫大和尚讲故事,大和尚说从前.... 递归的特点: 必有三个条件: 1. 间接或直接调用自己。 2. 一定要有退出的条件(比方说大和尚口干了不听故事了)。否则就是死循环 3。要有逻辑体(想要做的事); public int sum(int x){ if(x<=0){ return x; } return x+sum(x-1); } int s=10; int total=sum(s); 该例中,sum函数总是调用自己,return x+sum(x-1); sum有退出条件, x<=0 最后的结果是把 10+9+8+7+... 1 返回 在很多种情况下,迭代和递归都可以完成相同的功能, 不过递归有些功能迭代就完成不了。 并且代码没有递归简洁,熟练使用递归后能提高代码质量。
分享到:
相关推荐
迭代与递归的区别
迭代与递归算法
3.0简介3.1 循环结构与遍历操作3.2 迭代3.3 递归第3章 遍历、迭代与递归数据处理常要求遍历整个集合。遍历:按照某种次序访问集合中的所有元素,并且每个
公司要求分享迭代和递归函数,在周末的时间整理了一个简单的PPT,在这里也分享给大家,互相学些,相互总结。
主要为大家详细介绍了PHP迭代与递归实现无限级分类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
牛顿迭代算法与递归算法的概念和区别 很有帮助
DNS迭代查询和递归查询的区别.docx
C语言实现 求二项式各项系数(迭代,递归法)
DNS递归和迭代
c语言-阶乘算法(迭代和递归).docx
C++:斐波那契数列(迭代和递归)
Oracle使用递归查询。查询树结构的sql。在Oracle中,递归查询要用到start with ……connect by prior……
使用迭代和递归两种方法反转链表.docx
递归与迭代算法及其在JAVA语言中的应用.pdf
计算部分的数量 前提, 目标, 结果 前提: 学生需要掌握以下机能 • 树- 了解树的表示方法 • Map容器- 了解如何日用标准库中的map容器以及迭代器 • 递归- 了解如何构造一个递归的解决方案去解决一个问题
迭代与循环看似相似,却有不同之处。 循环:循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。 遍历 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,...
C++实现的快速幂算法-Pow(x,n),本算法实现了迭代和递归两个版本。
主要介绍了python中的函数递归和迭代原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在正整数集定义如下迭代序列 n=n/2 若n为偶数;n=3n+1 若n为奇数 从小于一百万的数开始,能够生成最长序列的是哪个数? 例如:13-40-20-10-5-16-8-4-2-1(10次) 文件包含迭代思路