В массив1 не добавляются значения массива2 в цикле. По одной из задач с leetcode
public static void main(String[] args) {
int[] test1 = {1,2,3,0,0,0};
int[] test2 = {2,5,6};
Main main = new Main();
main.merge(test1, test1.length, test2, test2.length);
}
public void merge(int[] nums1, int m, int[] nums2, int n) {
int counterN = 0;
for(int j = m; j < n; j++){
nums1[j] = nums2[counterN];
counterN++;}
for (int i:
nums1) {
System.out.println(i);
}
Подскажите, почему в цикле
for nums1[j] = nums2[counterN];
не добавляет в массив nums1
вместо нулей значения из массива nums2
?
То есть output получается [1,2,3,0,0,0], хотя предполагал, что будет [1,2,3,2,5,6].
По условию задачи m
и n
- это длины массивов nums1
и nums2
.
У nums1
реальная length
на входе в метод m+n, реальная m = 3, n = 3, m+n = 6.
Нулями в массиве nums1
заменены "пустые" ячейки, в которые предполагается в дальнейшем записать числа из массива nums2
.
Спасибо!