Để tạo một mảng hợp nhất có sắp xếp gồm hai mảng không được sắp xếp, trước tiên, chúng ta hãy tạo hai mảng chưa được sắp xếp−
int[] arr1 = new int[] {50, 22, 15, 40, 65, 75}; int[] arr2 = new int[] {60, 45, 10, 20, 35, 56};
Bây giờ chúng ta hãy tạo một mảng kết quả mới, mảng đó sẽ có mảng được hợp nhất−
Ví dụ
int count1 = arr1.length; int count2 = arr2.length; int [] resArr = new int[count1 + count2]; Now, we will merge both the arrays in the resultant array resArr: while (i < arr1.length){ resArr[k] = arr1[i]; i++; k++; } while (j < arr2.length){ resArr[k] = arr2[j]; j++; k++; }
Bây giờ chúng ta hãy xem ví dụ hoàn chỉnh
Ví dụ
import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class Demo { public static void main(String[] args){ int[] arr1 = new int[] {50, 22, 15, 40, 65, 75}; int[] arr2 = new int[] {60, 45, 10, 20, 35, 56}; System.out.println("1st Array = "+Arrays.toString(arr1)); System.out.println("2nd Array = "+Arrays.toString(arr2)); int count1 = arr1.length; int count2 = arr2.length; int [] resArr = new int[count1 + count2]; int i=0, j=0, k=0; while (i < arr1.length) { resArr[k] = arr1[i]; i++; k++; } while (j < arr2.length) { resArr[k] = arr2[j]; j++; k++; } Arrays.sort(resArr); System.out.println("Sorted Merged Array = "+Arrays.toString(resArr)); } }
Đầu ra
1st Array = [50, 22, 15, 40, 65, 75] 2nd Array = [60, 45, 10, 20, 35, 56] Sorted Merged Array = [10, 15, 20, 22, 35, 40, 45, 50, 56, 60, 65, 75]