Я создаю сортировку вставкой, первая работает и возвращает отсортированный массив:
// {9, 8, 3, 13, 87, 12, 1, 99} the unsorted list
static int[] insertionSort(int[] a){
for (int i = 1; i < a.length - 1; i++) {
int element = a[i];
int j = i - 1;
while(j >= 0 && a[j] > element){
a[j+1] = a[j];
j--;
}
a[j+1] = element;
}
return a;
}
// returns {1,3,8,9,12,13,67}
, но другая не связана с одной проблемой во втором коде, просто заменив "элемент "by" a [i] ", который такой же:
// {9, 8, 3, 13, 87, 12, 1, 99} the unsorted list
static int[] insertionSort(int[] a){
for (int i = 1; i < a.length - 1; i++) {
int element = a[i]; // what
int j = i - 1;
while(j >= 0 && a[j] > a[i]){
a[j+1] = a[j];
j--;
}
a[j+1] = a[i];
}
return a;
}
// returns {9,9,9,13,87,87,87}
из того, что я знаю [i], и элемент тот же.