(1)归并排序
①原理
归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子 序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。
②代码实现
递归实现:
public class MergeSort {
public static void main(String[] args) {
int[] array={
5,1,4,8,14,56,0,12,47,50};
System.out.println(Arrays.toString(array));
mergeSort(array);
System.out.println(Arrays.toString(array));
}
//递归
public static void mergeSortInternal(int[] array,int low,int high){
if(low>=high) return;
int mid=(low+high)/2;
mergeSortInternal(array,low,mid); //递归实现
mergeSortInternal(array,mid+1,high); //递归实现