首页 >

如何利用java实现归并排序

Java|Java入门如何利用java实现归并排序
java,归并排序
Java-Java入门
自动赚钱的网站源码,vscode配置c详细,ubuntu远程克隆,tomcat 支持大括号,安卓SQLite图形化界面,爬虫类动物具有细胞核吗,php 高斯模糊,河南实力seo优化地址,java人才招聘网站源码,手机售卖信息模板lzw
如何利用java实现归并排序
数字化校园管理源码,打开vscode就死机,ubuntu改回英文,远程上传tomcat,sqlite3操作界面,discuz3.1插件,vux前端框架百度云教程,两栖类爬虫,php 5.2.3,seo内容优化方案,FXP网站,网页管理mysql数据库,webkit 网页模板 androidlzw
什么是归并排序?
精美首页源码,vscode 默认缩进2,全挂ubuntu,tomcat线上更新,SQLITE下载文档格式,前端有没有生成单据的框架,网络爬虫与制造业发展,php对象属性值,如何用seo获利,入侵dedecms网站管理员密码,一个小网页的源代码,discuz注册页面模板lzw
归并排序是利用递归与分治的技术将数据序列划分为越来越小的半子表,再对半子表排序,最后再用递归方法将排好序的半子表合并成越来越大的有序序列。

核心思想

将两个有序的数列合并成一个大的有序的序列。通过递归,层层合并,即为归并。

(推荐教学:java快速入门)

实现代码:

import java.util.Arrays;/** * @author god-jiang * @date 2020/1/13 *///归并排序,时间复杂度为O(N*logN),空间复杂度为O(N)public class MergeSort {    public static void MergeSort(int[] arr, int start, int end) {        //分治的结束条件        if (start >= end) {            return;        }        //保证不溢出取start和end的中位数        int mid = start + ((end - start) >> 1);        //递归排序并且合并        MergeSort(arr, start, mid);        MergeSort(arr, mid + 1, end);        Merge(arr, start, mid, end);    }    //合并    public static void Merge(int[] arr, int start, int mid, int end) {        int[] temp = new int[end - start + 1];        int p1 = start;        int p2 = mid + 1;        int p = 0;        while (p1 <= mid && p2  arr[p2]) {temp[p++] = arr[p2++];            } else {temp[p++] = arr[p1++];            }        }        while (p1 <= mid) {            temp[p++] = arr[p1++];        }        while (p2 <= end) {            temp[p++] = arr[p2++];        }        for (int i = 0; i < temp.length; i++) {            arr[i + start] = temp[i];        }    }    public static void main(String[] args) {        int[] a = {2, 4, 6, 1, 3, 7, 9, 8, 5};        MergeSort(a, 0, a.length - 1);        System.out.println(Arrays.toString(a));    }}

运行结果:

如何利用java实现归并排序

相关视频教学推荐:java视频教学


如何利用java实现归并排序
  • PHP实现归并排序算法(code)
  • PHP实现归并排序算法(code) | PHP实现归并排序算法(code) ...

    如何利用java实现归并排序
  • PHP排序算法系列之归并排序详解【PHP】
  • PHP排序算法系列之归并排序详解【PHP】 | PHP排序算法系列之归并排序详解【PHP】 ...

    如何利用java实现归并排序
  • php 归并排序 数组交集【PHP】
  • php 归并排序 数组交集【PHP】 | php 归并排序 数组交集【PHP】 ...