在计算机算法中,它们有什么区别?

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/16 23:33:59
在计算机算法中,它们有什么区别?
x_N@/d D,Tj p `q$Ą&bevfO\BTTj_"yw7~)mpHBjpjWebnCu/[ְ]y*GVB,X=)\ ̪u eV/2Vn}V9; ,o3J-+VUח>RF6NV>d">^ D4{0 fQQ; [н>E< cncJqf60lS% s<%BSDas3 : o04OƃMb$`_dm/ P=Op dBED6}Ϻ ԠJݗrk Bڍ;~0αVBq/gv*(C+Sb!ZCdM/UI"8ԉIkG7K34UoR`Q +ʵҮXt|ټ'$O*9!!81z"lrNA!oDtVB%Uk Д #ZpB*zgaE%%BqmI~

在计算机算法中,它们有什么区别?
在计算机算法中,它们有什么区别?

在计算机算法中,它们有什么区别?
递归与迭代都是基于控制结构:迭代用重复结构,而递归用选择结构.
递归与迭代都涉及重复:迭代显式使用重复结构,而递归通过重复函数调用实现重复.
递归与迭代都涉及终止测试:迭代在循环条件失败时终止,递归在遇到基本情况时终止.
使用计数器控制重复的迭代和递归都逐渐到达终止点:迭代一直修改计数器,直到计数器值使循环条件失败;递归不断产生最初问题的简化副本,直到达到基本情况.迭代和递归过程都可以无限进行:如果循环条件测试永远不变成false,则迭代发生无限循环;如果递归永远无法回推到基本情况,则发生无穷递归.
递归函数是通过调用函数自身来完成任务,而且在每次调用自身时减少任务量.而迭代是循环的一种形式,这种循环不是由用户输入而控制,每次迭代步骤都必须将剩余的任务减少;也就是说,循环的每一步都必须执行一个有限的过程,并留下较少的步骤.