问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

谁能说说递归和迭代有什么区别?

发布网友 发布时间:2022-04-29 15:32

我来回答

4个回答

热心网友 时间:2023-10-15 19:11

简单来说,递归就是自己调用自己,如:
int abc(...)
{
if(...) //递归终止条件
{ return abc(...); }
return 0;
}

而递归是重复一组指令,不断地根据变量的旧值推出新值,如:
for(; ; ;) //迭代终止条件
{
a = b + c;
b = a;
c = a;
}

热心网友 时间:2023-10-15 19:11

形象的说,迭代就是不断的裹上洋葱皮,递归就是不断剥去洋葱皮,最终是达到同一个目的,应该说两者有点逆过程的意思。

热心网友 时间:2023-10-15 19:11

简单来说,递归就是自己调用自己,如:
int abc(...)
{
if(...) //递归终止条件
{ return abc(...); }
return 0;
}

而递归是重复一组指令,不断地根据变量的旧值推出新值,如:
for(; ; ;) //迭代终止条件
{
a = b + c;
b = a;
c = a;
}

热心网友 时间:2023-10-15 19:11

形象的说,迭代就是不断的裹上洋葱皮,递归就是不断剥去洋葱皮,最终是达到同一个目的,应该说两者有点逆过程的意思。

热心网友 时间:2023-10-15 19:11

zwu说到点子上了。
递归是自顶向下逐步拓展需求,最后自下向顶运算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n)。

热心网友 时间:2023-10-15 19:11

简单来说,递归就是自己调用自己,如:
int abc(...)
{
if(...) //递归终止条件
{ return abc(...); }
return 0;
}

而递归是重复一组指令,不断地根据变量的旧值推出新值,如:
for(; ; ;) //迭代终止条件
{
a = b + c;
b = a;
c = a;
}

热心网友 时间:2023-10-15 19:11

简单来说,递归就是自己调用自己,如:
int abc(...)
{
if(...) //递归终止条件
{ return abc(...); }
return 0;
}

而递归是重复一组指令,不断地根据变量的旧值推出新值,如:
for(; ; ;) //迭代终止条件
{
a = b + c;
b = a;
c = a;
}

热心网友 时间:2023-10-15 19:11

形象的说,迭代就是不断的裹上洋葱皮,递归就是不断剥去洋葱皮,最终是达到同一个目的,应该说两者有点逆过程的意思。

热心网友 时间:2023-10-15 19:11

zwu说到点子上了。
递归是自顶向下逐步拓展需求,最后自下向顶运算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n)。

热心网友 时间:2023-10-15 19:12

一、含义不同:递归是重复调用函数自身实现循环。
迭代是函数内某段代码实现循环,循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。
递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代则使用计数器结束循环。当然很多情况都是多种循环混合采用,这要根据具体需求。
二、结构不同:递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止,使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。
递归算法一般用于解决三类问题:
(1)数据的定义是按递归定义的。(Fibonacci函数)
(2)问题解法按递归算法实现。这类问题虽则本身没有明显的递归结构,但用递归求解比迭代求解更简单,如Hanoi问题。
(3)数据的结构形式是按递归定义的。如二叉树、广义表等,由于结构本身固有的递归特性,则它们的操作可递归地描述。以上内容参考:百度百科-递归

热心网友 时间:2023-10-15 19:11

形象的说,迭代就是不断的裹上洋葱皮,递归就是不断剥去洋葱皮,最终是达到同一个目的,应该说两者有点逆过程的意思。

热心网友 时间:2023-10-15 19:11

简单来说,递归就是自己调用自己,如:
int abc(...)
{
if(...) //递归终止条件
{ return abc(...); }
return 0;
}

而递归是重复一组指令,不断地根据变量的旧值推出新值,如:
for(; ; ;) //迭代终止条件
{
a = b + c;
b = a;
c = a;
}

热心网友 时间:2023-10-15 19:11

zwu说到点子上了。
递归是自顶向下逐步拓展需求,最后自下向顶运算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n)。

热心网友 时间:2023-10-15 19:11

zwu说到点子上了。
递归是自顶向下逐步拓展需求,最后自下向顶运算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n)。

热心网友 时间:2023-10-15 19:11

形象的说,迭代就是不断的裹上洋葱皮,递归就是不断剥去洋葱皮,最终是达到同一个目的,应该说两者有点逆过程的意思。

热心网友 时间:2023-10-15 19:11

zwu说到点子上了。
递归是自顶向下逐步拓展需求,最后自下向顶运算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向顶运算,由f(1)算到f(n)。

热心网友 时间:2023-10-15 19:12

一、含义不同:递归是重复调用函数自身实现循环。
迭代是函数内某段代码实现循环,循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。
递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代则使用计数器结束循环。当然很多情况都是多种循环混合采用,这要根据具体需求。
二、结构不同:递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止,使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。
递归算法一般用于解决三类问题:
(1)数据的定义是按递归定义的。(Fibonacci函数)
(2)问题解法按递归算法实现。这类问题虽则本身没有明显的递归结构,但用递归求解比迭代求解更简单,如Hanoi问题。
(3)数据的结构形式是按递归定义的。如二叉树、广义表等,由于结构本身固有的递归特性,则它们的操作可递归地描述。以上内容参考:百度百科-递归

热心网友 时间:2023-10-15 19:12

一、含义不同:递归是重复调用函数自身实现循环。
迭代是函数内某段代码实现循环,循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。
递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代则使用计数器结束循环。当然很多情况都是多种循环混合采用,这要根据具体需求。
二、结构不同:递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止,使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。
递归算法一般用于解决三类问题:
(1)数据的定义是按递归定义的。(Fibonacci函数)
(2)问题解法按递归算法实现。这类问题虽则本身没有明显的递归结构,但用递归求解比迭代求解更简单,如Hanoi问题。
(3)数据的结构形式是按递归定义的。如二叉树、广义表等,由于结构本身固有的递归特性,则它们的操作可递归地描述。以上内容参考:百度百科-递归

热心网友 时间:2023-10-15 19:12

一、含义不同:递归是重复调用函数自身实现循环。
迭代是函数内某段代码实现循环,循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。
递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代则使用计数器结束循环。当然很多情况都是多种循环混合采用,这要根据具体需求。
二、结构不同:递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止,使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。
递归算法一般用于解决三类问题:
(1)数据的定义是按递归定义的。(Fibonacci函数)
(2)问题解法按递归算法实现。这类问题虽则本身没有明显的递归结构,但用递归求解比迭代求解更简单,如Hanoi问题。
(3)数据的结构形式是按递归定义的。如二叉树、广义表等,由于结构本身固有的递归特性,则它们的操作可递归地描述。以上内容参考:百度百科-递归

热心网友 时间:2023-10-15 19:12

一、含义不同:递归是重复调用函数自身实现循环。
迭代是函数内某段代码实现循环,循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。
递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代则使用计数器结束循环。当然很多情况都是多种循环混合采用,这要根据具体需求。
二、结构不同:递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构。递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复。
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止,使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况。
递归算法一般用于解决三类问题:
(1)数据的定义是按递归定义的。(Fibonacci函数)
(2)问题解法按递归算法实现。这类问题虽则本身没有明显的递归结构,但用递归求解比迭代求解更简单,如Hanoi问题。
(3)数据的结构形式是按递归定义的。如二叉树、广义表等,由于结构本身固有的递归特性,则它们的操作可递归地描述。以上内容参考:百度百科-递归
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 安卓游戏《宝贝猜拳》求分享。 宝贝猜拳为什么苹果5手机下不了,苹果6可以下载 宝贝猜拳破解版跪求 递归和迭代有哪些区别? 在c语言中递归和迭代有什么区别和联系各自的优缺点是什么二者分别适合解决什? 中国可转债到今为止是否有90支?是哪些?转股了的有哪些,没转的又有哪些?这些公司发生什么情况? 目前信用卡还款最多能分多少期? 昆池岩 百度云 谢谢 如何评价恐怖片《昆池岩》? 湘乡有些什么特产? 昆池岩真的很恐怖? 昆池岩鬼脸是在第几分钟 带烘干的洗衣机好用吗?烘干后要不要再晒? 烘干的衣服会不会很皱? 松下滚筒洗衣机想烘干货自动脱水,必须关机在开启,才能设置吗? 固定资产加速折旧怎么计算 松下p1DL洗衣机有烘干功能吗 固定资产加速折旧有什么好处吗?能具体举列一下吗? 企业固定资产加速折旧的,可以采取哪些 配债是利好还是利空 固定资产加速折旧法是哪两个? 寻找一款魔力宝贝单机版,在线等 见识一下尾递归的强大,尾递归怎么会比迭代 宋祖德的介绍 如何下载悟空的遗产3攻略 宋祖德简介 宋祖德 的个人档案及个人简历 神奇宝贝心跳捉迷藏插曲 宋祖德到底是什么人? Q宠高手来 宋祖德是谁? QQ宠物怎么养好 请问宋祖德是谁? 小心超人的资料~~ 宋祖德全球官方网的人物简介 怎么样使QQ宠物心情变好 宋祖德的早年经历 递归算法的程序结构比迭代算法的程序结构更为精炼,这个正确吗,能不能解释下? 宝宝目前在学认字,有什么有趣的方法教他认字吗? 宋祖德详细资料 宋祖德是否和芙蓉姐姐有关系啊?