Мой первый массив почти отсортирован. Мне нужно заменить несортированный элемент максимально возможным элементом из второго массива. Неправильно расположенный элемент не будет находиться в индексе 0 или n-1. И если array1 [i] меньше, чем array1 [i-1], то индекс i является неправильным индексом.
Например: первый вход 5 первый массив: 2 7 8 6 13 второй вход 4 второй массив 15 11 9 5 Мой результат будет 11
, однако, если нет возможного элемента, который я мог бы взять из второго массива, печать будет невозможна. например: 14 15 16 17 или если в нем 0 элементов.
Как исправить этот код?
int n1 = s.nextInt();
int[] array1 = new int[n1];
for (int i = 0; i < n1; i++) {
array1[i] = s.nextInt();
}
int n2 = s.nextInt();
int[] array2 = new int[n2];
for (int i = 0; i < n2; i++) {
array2[i] = s.nextInt();
}
int temp1=0;
int temp2=0;
for(int i=0; i < array1.length-1;i++) {
if (array1[i] > array1[i+1]) {
temp1=array1[i+1];
temp2=array1[i+2];
break;
}
}
int temp3 = 0;
for(int j=0; j<=array2.length-1;j++) {
if(array2[j] > temp1 && array2[j] < temp2){
temp3 = array2[j];
break;
}
}
System.out.println(temp3);
}
}