Merge Sort Java
Merge Sort Java
println("\n\n Merge Sort\n\n"); System.out.println("Isi Array Sebelum Di Urutkan dengan Merge Sort: \n"); for(i =0; i < array.length; i++) System.out.print( array[i]+" "); System.out.println(); mergeSort_srt(array,0, array.length-1); System.out.print("Isi Array SetelahDi Urutkan dengan Merge Sort:\n"); for(i =0; i <array.length; i++) System.out.print(array[i]+" "); System.out.println(); System.out.println("Berhenti"); } public static void mergeSort_srt(int array[],int lo, int n) { int low = lo; int high = n; if (low >= high) { return ; } int middle = (low + high) /2; mergeSort_srt(array, low, middle); mergeSort_srt(array, middle +1, high); int end_low = middle; int start_high = middle +1; while ((lo <= end_low) && (start_high <= high)) { if (array[low] < array[start_high]) //kondisi benar { low++; } else { //Kondisi salah int Temp = array[start_high]; for ( int k = start_high-1; k >= low; k--) { array[k+1] = array[k]; } array[low] = Temp; low++; end_low++;
start_high++; } } } }
Isi Array Sebelum Di Urutkan dengan Merge Sort 102 234 656 70 71 56 342 101 Isi Array SetelahDi Urutkan dengan Merge Sort: 56 70 71 101 102 234 342 656 Berhenti Process completed.