归并排序java代码实现
时间: 2023-08-27 18:15:02 浏览: 95
以下是用Java实现归并排序的代码:
```java
private static void mergeSort(long[] arry, long[] temArr, int left, int right) {
if (left < right) {
int mid = (left + right) / 2;
mergeSort(arry, temArr, left, mid);
mergeSort(arry, temArr, mid + 1, right);
merge(arry, temArr, left, mid + 1, right);
}
}
private static void merge(long[] arry, long[] temArr, int leftPos, int rightPos, int rightEnd) {
int leftEnd = rightPos - 1;
int temPos = leftPos;
int numElements = rightEnd - leftPos + 1;
while (leftPos <= leftEnd && rightPos <= rightEnd) {
if (arry[rightPos < arry[leftPos]) {
temArr = arry[rightPos];
rightPos++;
} else {
temArr = arry[leftPos];
leftPos++;
}
temPos++;
}
while (leftPos <= leftEnd) {
temArr = arry[leftPos];
temPos++;
leftPos++;
}
while (rightPos <= rightEnd) {
temArr = arry[rightPos];
temPos++;
rightPos++;
}
for (int i = 0; i < numElements; i++, rightEnd--) {
arry[rightEnd = temArr[rightEnd];
}
}
public static void mergeSort(long[] arry) {
int n = arry.length;
long[] temArr = new long[n];
mergeSort(arry, temArr, 0, n - 1);
}
```
这段代码实现了归并排序算法。首先,在`mergeSort`函数中,将数组分解成两半并进行递归调用。然后,使用`merge`函数对两个子数组进行合并和排序。最后,通过调用`mergeSort`函数,可以对整个数组进行归并排序。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [JAVA实现归并排序](https://blog.csdn.net/QQ719271879/article/details/127992128)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)