千家信息网

Java中怎么实现归并排序

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,Java中怎么实现归并排序 ,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。public class MergeSort { sta
千家信息网最后更新 2025年12月03日Java中怎么实现归并排序

Java中怎么实现归并排序 ,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

public class MergeSort {    static int number=0;    public static void main(String[] args) {        int[] a = {26, 5, 98, 108, 28, 99, 100, 56, 34, 1 };        printArray("排序前:",a);        MergeSort(a);        printArray("排序后:",a);    }    private static void printArray(String pre,int[] a) {        System.out.print(pre+"\n");        for(int i=0;i=right)            return;        int mid = (left + right) / 2;        //二路归并排序里面有两个Sort,多路归并排序里面写多个Sort就可以了        Sort(a, left, mid);        Sort(a, mid + 1, right);        merge(a, left, mid, right);    }    private static void merge(int[] a, int left, int mid, int right) {        int[] tmp = new int[a.length];        int r1 = mid + 1;        int tIndex = left;        int cIndex=left;        // 逐个归并        while(left <=mid && r1 <= right) {            if (a[left] <= a[r1])                tmp[tIndex++] = a[left++];            else                tmp[tIndex++] = a[r1++];        }        // 将左边剩余的归并        while (left <=mid) {            tmp[tIndex++] = a[left++];        }        // 将右边剩余的归并        while ( r1 <= right ) {            tmp[tIndex++] = a[r1++];        }        System.out.println("第"+(++number)+"趟排序:\t");        // TODO Auto-generated method stub        //从临时数组拷贝到原数组        while(cIndex<=right){            a[cIndex]=tmp[cIndex];            //输出中间归并排序结果            System.out.print(a[cIndex]+"\t");            cIndex++;        }        System.out.println();    }}

看完上述内容,你们掌握Java中怎么实现归并排序 的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

排序 内容 数组 方法 更多 问题 剩余 束手无策 为此 两个 原因 右边 多个 对此 技能 拷贝 篇文章 经验 结果 行业 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 定点药店零售代码数据库动态维护 正规网络安全运维哪家好 我的世界服务器计分板隐藏功能 软件开发和云计算对年龄的要求 明日之后把物资转到另一个服务器 网络安全案例摘抄 删掉了所有数据库 服务器安全远程桌面怎么用 大同惠联百城网络技术公司 从事网络安全可以从哪里开始 数据库中常见列名 单位 自己拥有一个小型服务器如何赚钱 微信小程序获取数据库图片 数据库选择关系投影是什么 哈尔滨网络安全绘画 软件开发公司的工资税收 普陀区网络技术服务信息推荐 依据中华人民共和国网络安全法 任何个人 软件开发管理 软件开发中最关键的人员是 网络安全专业有哪些课程 伦纳德2k数据库 ftp客户机和服务器之间建立 富途网络技术 碧龙服务器充电桩 数据库共享数据的方法 网络安全教育进学校 常州正规网络技术市场价格 数据库工程师技术负责人 浙江网络技术服务代理品牌
0