/**
* @Author: DiTian
* @Description: 合并两个有序数组
* @Date: Created in 9:24 2021/8/13
*/
public class MergeTwoArrays {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个有序数组,逗号隔开:");
String[] s1 = scanner.nextLine().split(",");
System.out.println("请输入第一个有序数组,逗号隔开:");
String[] s2 = scanner.nextLine().split(",");
int[] arr1 = new int[s1.length];
int[] arr2 = new int[s2.length];
for (int i = 0; i < s1.length; i++) {
arr1[i] = Integer.parseInt(s1[i]);
}
for (int i = 0; i < s2.length; i++) {
arr2[i] = Integer.parseInt(s2[i]);
}
System.out.println(Arrays.toString(doubleMerge(arr1,arr2)));
}
private static int[] doubleMerge(int[] arr1, int[] arr2) {
int[] mergeArr = new int[arr1.length+ arr2.length];
for(int i = 0,j = 0,k = 0;i<arr1.length||j< arr2.length;){
if (i<arr1.length&&j< arr2.length){
if (arr1[i]<arr2[j]){
mergeArr[k++] = arr1[i++];
}else {
mergeArr[k++] = arr2[j++];
}
}else if (i>=arr1.length){
mergeArr[k++] = arr2[j++];
}else {
mergeArr[k++] = arr1[i++];
}
}
return mergeArr;
}
}
88. 合并两个有序数组
最新推荐文章于 2025-05-01 20:06:47 发布