java数据结构和算法------合并排序
2024-10-21 03:35:46
package iYou.neugle.sort; public class Merge_sort { public static void MergeSort(double[] array, int start, int end) {
if (start < end) {
int middle = (start + end) / 2;
MergeSort(array, start, middle);
MergeSort(array, middle + 1, end);
Merge(array, start, middle, end);
}
} private static void Merge(double[] array, int start, int middle, int end) {
int n1 = middle - start + 1;
int n2 = end - middle;
double[] L = new double[n1];
double[] R = new double[n2];
for (int i = 0; i < n1; i++) {
L[i] = array[start + i];
}
for (int i = 0; i < n2; i++) {
R[i] = array[middle + i + 1];
}
for (int i = 0, j = 0, k = start; k <= end; k++) {
if (j == n2 || (i < n1 && L[i] <= R[j])) {
array[k] = L[i];
i++;
} else {
array[k] = R[j];
j++;
}
}
}
}
最新文章
- Qt qmake 使用(含遗留问题)
- 设置java web工程中默认访问首页的几种方式
- 记在thinkPHP中一个创建模型的小错误
- Linux - full name of command
- Mysql子查询、关联查询
- VoltDB公布4.0版本号,大步提高内存实时分析速度,进军操作数据库市场
- SQL Server 查看identity值的几种方法。
- .Net 4.0特性 Tuple元组
- js 数字递增特效 仿支付宝我的财富 HTML5
- AMS的适用场景
- XOR+base64加密
- innodb_file_per_table - 转换为InnoDB
- 最近玩的centos7.3用的防火墙转载
- 自定义 vue switch 组件
- Spring编程式和声明式事务实例讲解
- java判断邮件是否发送成功
- TimerJob无法发布新版本问题
- JNI介绍
- hive读书笔记
- Rails generate的时候不生成assets和test