首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >递归排序算法与非递归排序算法

递归排序算法与非递归排序算法
EN

Stack Overflow用户
提问于 2012-08-20 06:53:46
回答 3查看 32.4K关注 0票数 4

有人能用英语解释一下排序算法的非递归实现和递归实现有什么不同吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-20 06:56:28

递归排序算法的工作原理是将输入拆分为两个或多个较小的输入,然后对这些输入进行排序,然后合并结果。Merge sortquick sort是递归排序算法的示例。

非递归技术是指任何不使用递归的技术。Insertion sort是一个非递归排序算法的简单示例。

票数 2
EN

Stack Overflow用户

发布于 2012-08-20 07:01:05

它们有什么不同,在什么意义上?请记住:任何递归算法都可以作为迭代算法实现,反之亦然(请查看此post)。迭代或递归-这只是一个实现细节;尽管它可以根据选择对性能产生重大影响,但算法将是相同的。

票数 6
EN

Stack Overflow用户

发布于 2012-08-20 06:56:38

递归排序算法调用自身对数组的较小部分进行排序,然后组合部分排序的结果。快速排序就是一个例子。

非递归算法一次完成所有排序,而不调用自身。冒泡排序是一个非递归算法的例子。

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

https://stackoverflow.com/questions/12030618

复制
相关文章

相似问题

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