美文网首页
排序算法之归并排序

排序算法之归并排序

作者: 繁花似锦之流年似水 | 来源:发表于2019-06-07 22:46 被阅读0次

    归并算法简单介绍

    归并算法的核心是:先拆分然后再合并。

    拆分原则:先将序列折半进行拆分,当子序列只有一个元素时停止

    合并原则:从下往上合并子序列,合并的同时使得子序列生成的父序列是有序的

    代码详解:

    1、首先要实现拆分:这个是通过mid中间值来实现,利用列表切片原理将原来的列表分成两部分

    2、要实现拆分整个列表,因为拆分过程相同我们这里使用递归。递归的终止条件是只剩下一个元素,通过判断列表长度实现

    3、下面开始分析合并的代码,合并的时候要使得合并后的序列保持有序。这里使用两个指针,处理的是两个子序列,最后处理完成后返回一个有序的父序列。用result接受合并过程中生成的父序列。两个指针分别指向左、右子序列的起始位置,判断两边值的大小插入到父序列中。指针对应元素插入到父序列后,指针移动继续比较。循环结束条件是子序列中元素全部插入完成,即指针移动到子序列的最后

    并归排序 测试代码

    相关文章

      网友评论

          本文标题:排序算法之归并排序

          本文链接:https://www.haomeiwen.com/subject/jgnvxctx.html