递归和迭代的区别

今天看论文《FERN》,里面讲到关于DNS实现名字解析的原理,在DNS构成的树结构中,利用迭代实现名字解析;而一些未来网络的名字解析系统使用的基于树结构的递归解析,主要是找到最高的共同祖先。故想要了解一下迭代和递归调用的区别。

联想到递归调用的图
递归需要满足两个条件:

#1 自身调用
#2 递归结束条件: 一个是一层一层调用到最后达到预设条件后会再一层一层返回到顶端得到最终结果,递归调用需要一个很明确的递归结束的条件

迭代:重复调用同一个函数,满足循环终止条件即可

迭代和递归的主要区别
即为循环结束的位置。
递归:一层递归结束后需返回上一层的递归调用
循环:循环结束后,程序的调用的入口位置不变

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值