归并排序

归并排序


归并排序(Mergesort,台湾译作:合并排序)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(DivideandConquer)的一个非常典型的应用。


算法步骤:


1.申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列


2.设定两个指针,最初位置分别为两个已经排序序列的起始位置


3.比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置


4.重复步骤3直到某一指针达到序列尾


5.将另一序列剩下的所有元素直接复制到合并序列尾

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 归并排序 所谓归并,就是将两个或两个以上的有序表合并成一个新的有序表。如下图所示,有两个已经排好序的有序表A[1]...
    JackChen1024阅读 2,383评论 0 4
  • 归并排序和快速排序都用到了分治思想,非常巧妙。我们可以借鉴这个思想,来解决非排序的问题。 归并排序 归并排序的核心...
    被吹落的风阅读 1,357评论 0 3
  • 归并排序就这么简单 从前面已经讲解了冒泡排序、选择排序、插入排序,快速排序了,本章主要讲解的是归并排序,希望大家看...
    Java3y阅读 557评论 2 6
  • 一、概述 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer...
    夏与清风阅读 1,130评论 0 1
  • 序言 上一篇文章我们已经讲完了插入排序,也就是说我的On^2 的算法基本就写完了,当然还有别的On^2 的算法,但...
    再见远洋阅读 1,689评论 0 3