explicitorimplicit 2016-10-09 13:53 采纳率: 0%
浏览 2199

自然合并排序和合并排序的区别

请详细解释一下,自然合并排序和合并排序的区别,根据网上解释,没看出区别,请各位大神把两者比较一下,谢谢你们

  • 写回答

2条回答 默认 最新

  • lyhoo163 2016-10-09 23:33
    关注

    1、要弄清合并排序
    合并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。
    合并排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。
    将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。合并排序也叫归并排序。

    2、自然合并排序
    就是在合并排序时,建立子数组段,通过数组已排序的(自然排序,不重新排序)子数组段。如{4,8,3,7,1,5,6,2},自然排好序的子数组段{4,8},{3,7},{1,5,6},{2}
    如果是合并排序,就是通过编程语句,通过比较(打破原序列)再建立子数组段。如{4,8,3,7,1,5,6,2},重新排序的子数组段{1,2},{3,4},{5,6},{7,8}

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog