首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >递归与经典算法复杂度?

递归与经典算法复杂度?
EN

Stack Overflow用户
提问于 2022-01-05 06:33:25
回答 1查看 99关注 0票数 -2

递归函数在许多情况下都是有效的,并且在实现算法中广泛使用,如:

  • 搜索算法->二进制搜索
  • 排序算法->合并排序

与传统算法相比,递归函数O(logn)或O(nlogn)的时间复杂度低,易于用我们的思维方式进行分析。

但是,如果我们讨论为更复杂的任务编写递归函数的复杂性,那么我们的思维逻辑就很难分析它是如何完美工作的。

这里的问题是,这是否意味着编写一个复杂的函数的模式就像计算机如何工作比我们的大脑如何思考计算机的工作效率更高?!

EN

回答 1

Stack Overflow用户

发布于 2022-01-05 07:21:40

递归表示的每个程序也可以迭代表示。Python不支持尾调用优化,因此这里不考虑尾调用优化。因此,最佳算法将不取决于这种选择,只取决于它的具体实现。

高度优化的代码往往难以理解,因为计算机和头脑的工作方式非常不同。因此,如果您对其中一个进行了强优化,则可能会牺牲另一个的性能。你需要在两者之间做出妥协,如果可能的话,你更倾向于可读性,如果严格需要的话,你只需要选择计算性能。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70588668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档