开发者社区> 问答> 正文

编程递归算法是不是很低效?

编程递归算法是不是很低效?

展开
收起
知与谁同 2018-07-18 13:27:58 1832 0
4 条回答
写回答
取消 提交回答
  • 云栖社区聚能聊、问答管理员~发福利、搞怪,八卦我来,论技术、发话题、写博客你上!
    不是,看你怎么运用。
    2019-07-17 22:55:46
    赞同 展开评论 打赏
  • Nothing for nothing.
    这个是不一定的,有的时候用递归反而更高效,但是一般来说递归的效率是比较低的,什么都有两面性,要看你怎么理解怎么应用
    2019-07-17 22:55:46
    赞同 展开评论 打赏
  • 能不用尽量别用 不是低效,看你程序怎么写了 主要是维护和修改很困难 而且难以理解相对于循环来说
    2019-07-17 22:55:46
    赞同 展开评论 打赏
  • 胜天半子
    相对来说,递归的效率低,主要是因为递归时会反复调用函数(递归函数)。
    而函数发生调用时,程序会将当前的一些数据存入堆栈中(保存现场),等函数调用结束时,将堆栈中的数据再取出来(恢复现场)。函数调用时,是有开销的(占用堆栈资源,占用CPU时间)。
    所以相对来说,递归的效率比较低。在可能的情况下,建议将递归程序改成迭代模式。
    2019-07-17 22:55:46
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载