博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 归并排序
阅读量:5021 次
发布时间:2019-06-12

本文共 1217 字,大约阅读时间需要 4 分钟。

package cookie;public class MergeSort {        void mergeSort(int[] a, int[] temp, int left, int right) {        if (left < right) {            int center = (left + right) / 2;            mergeSort(a, temp, left, center);            mergeSort(a, temp, center + 1, right);            merge(a, temp, left, center + 1, right);        }    }    void merge(int[] a, int[] tempArray, int leftStart, int rightStart, int rightEnd) {        int leftEnd = rightStart - 1;        int tempPos = leftStart;        int numElements = rightEnd - leftStart + 1;        while (leftStart <= leftEnd && rightStart <= rightEnd) {            if (a[leftStart] <= a[rightStart]) {                tempArray[tempPos++] = a[leftStart++];            } else {                tempArray[tempPos++] = a[rightStart++];            }            while (leftStart <= leftEnd) {                tempArray[tempPos++] = a[leftStart++];            }            while (rightStart <= rightEnd) {                tempArray[tempPos++] = a[rightStart++];            }            for (int i = 0; i < numElements; i++, rightEnd--) {                a[rightEnd] = tempArray[rightEnd];            }        }    }}

 

转载于:https://www.cnblogs.com/chenhuanBlogs/p/7665876.html

你可能感兴趣的文章
JAVA修饰符类型(public,protected,private,friendly)
查看>>
flex利用webservice上传照片
查看>>
IOS开发之Bug--使用KVC的易错情况
查看>>
python list和tuple
查看>>
基础薄弱的反思
查看>>
ORACLE增删改查以及case when的基本用法
查看>>
[转]oracle10客户端PL/SQL Developer如何连接远程服务器上的oracle数据库
查看>>
HTML5 表单元素和属性
查看>>
SDUTOJ 2498 数据结构实验之图论十一:AOE网上的关键路径
查看>>
使用SpringSocial开发QQ登录
查看>>
好玩的游戏
查看>>
2.6. Statistical Models, Supervised Learning and Function Approximation
查看>>
代码说明call和apply方法的区别 (咱们这方面讲解的少,这样的题有变式,需要举例讲解一下)...
查看>>
T-SQL 类型转换
查看>>
在eclipse中设计BPMN 2.0工作流定义的根本步骤
查看>>
Json对象与Json字符串互转(4种转换方式)
查看>>
PAT甲级1002 链表实现方法
查看>>
查看Linux信息
查看>>
Python中sys模块sys.argv取值并判断
查看>>
【详记MySql问题大全集】四、设置MySql大小写敏感(踩坑血泪史)
查看>>