public static void mergeSort1(int[] arr){
if(arr ==null || arr.length <2){
return;
}
process(arr, 0 , arr.length-1);
}
public static void process(int[] arr ,int L ,int R){
if(L ==R){
return;
}
int mid = L +((R-L)>>1);
process(arr , L , mid);
process(arr , mid+1 , R);
merge(arr , L , mid ,R);
}
public static void merge(int[] arr , int L , int M , int R){
int[] help = new int[R-L+1];
int i =0;
int p1 = L;
int p2 = M+1;
while(p1 <= M && p2 <= R){
help[i++] = arr[p1] <= arr[p2] ? arr[p1++] :arr[p2++];
}
while (p1 <= M){
help[i++] = arr[p1++];;
}
while (p2 <= R){
help[i++] = arr[p2++];;
}
for (i = 0; i < help.length; i++) {
arr[L+i] = help[i];
}
}
归并排序(递归实现)
听风客12024-07-17 20:30
相关推荐
while(1){yan}2 分钟前
SpringAOP专注于大数据技术栈3 分钟前
java学习--Collectionheartbeat..4 分钟前
Spring 全局上下文实现指南:单机→异步→分布式hetao17338374 分钟前
2026-01-09~12 hetao1733837 的刷题笔记浙江巨川-吉鹏5 分钟前
【城市地表水位连续监测自动化系统】沃思智能zero.cyx12 分钟前
javaweb(AI)-----后端鹿角片ljp14 分钟前
Java深入理解MySQL数据库操作NE_STOP15 分钟前
SpringBoot集成shiroRemainderTime17 分钟前
从零搭建Spring Boot3.x生产级单体脚手架项目(JDK17 + Nacos + JWT + Docker)黯叶19 分钟前
基于 Docker+Docker-Compose 的 SpringBoot 项目标准化部署(外置 application-prod.yml 配置方案)