Слияние двух списков. Ошибка "Индекс должен находиться в границах этого списка" - C#
Формулировка задачи:
Есть метод слияния двух списков List<int> один.
Например,подаю на вход первый список 27 42 -26 -12 -10 и второй список -45 -12 24 36 46.
Но выдает экзепшн,мол индекс должен находиться в границах этого списка. При том,индекс не отрицательный, не равен/больше количества элементов.
Подскажите пожалуйста,в чем проблема и что я делаю не так?
private List<int> MergeArrays(List<int> firstArray, List<int> secondArray) { List<int> result = new List<int>(); result.AddRange(firstArray); for (int i = 0; i < secondArray.Count; i++) { for (int j = 0; j < result.Count-1 ; j++) { if (secondArray[i] < result[j]) result.Insert(secondArray[i], j); if (secondArray[i] == result[j]) result.Insert(secondArray[i], j); if (secondArray[i] > result[j] && secondArray[i] < result[j + 1]) { result.Insert(secondArray[i], j ); } if (secondArray[i] > result[j] && secondArray[i] > result[j + 1]) { int h = i; while((h==result.Count-1)&&secondArray[i]>result[h]) { h++; } result.Insert(secondArray[i], h ); } } } return result; }
Решение задачи: «Слияние двух списков. Ошибка "Индекс должен находиться в границах этого списка"»
textual
Листинг программы
if (secondArray[i] < result[j]) result.Insert(secondArray[i], j);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д