美文网首页
归并排序算法Java实现

归并排序算法Java实现

作者: 昔日的帅哥 | 来源:发表于2019-08-15 10:37 被阅读0次
public class MergeSort {


    public static int[] MergeSort(int[] array) {
        if (array.length < 2)
            return array;

        int mid = array.length / 2;
        int[] left = Arrays.copyOfRange(array, 0, mid);
        int[] right = Arrays.copyOfRange(array, mid, array.length);
        return merge(MergeSort(left), MergeSort(right));
    }

    private static int[] merge(int[] left, int[] right) {
        int[] array = new int[left.length + right.length];

        for (int index = 0, i = 0, j = 0; index < array.length; index++) {
            if (i >= left.length) {
                array[index] = right[j++];
            } else if (j >= right.length) {
                array[index] = left[i++];
            } else if (left[i] < right[j]) {
                array[index] = left[i++];
            } else {
                array[index] = right[j++];
            }
        }
        return array;
    }
}

相关文章

  • 排序

    八大排序算法 一、归并排序 递归及非递归的JAVA实现 二、快速排序 快排算法JAVA实现 三、堆排序 堆排序堆排...

  • 2018-06-30

    排序算法之归并排序 归并排序算法是排序算法中的经典算法之一,其核心思想是利用归并的思想实现的排序方法,该算法采用经...

  • 排序算法之归并排序

    归并排序(Merge Sort) 归并排序是利用归并的思想实现排序的方式,该算法采用的是经典的分治算法 归并排序过...

  • 第三章:高级排序算法

    归并排序算法(mergeSort) 算法思想:Python使用函数实现: 自底向上的归并排序算法 算法思想:Pyt...

  • 归并排序

    图解排序算法(四)之归并排序 基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用...

  • 排序算法的实现

    用java对常用内部排序算法的实现。 对冒泡排序,简单选择排序,直接插入排序,希尔排序,归并排序的简单实现(缺少快...

  • 归并排序&快速排序

    归并排序 利用归并的思想实现排序方法,该算法采用经典的分治策略,分而治之。 代码实现 基础设置 归并排序 —— 非...

  • 归并排序

    归并排序Java实现

  • 十大经典排序算法(java实现)

    前言 本文我们将以java代码实现十大经典排序算法,包括冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序...

  • 盘点常用Java排序算法

    本文主要介绍Java的七种常见排序算法的实现,对选择排序、插入排序、冒泡排序、归并排序、快速排序、希尔排序、最小堆...

网友评论

      本文标题:归并排序算法Java实现

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