Итак, я пытаюсь превратить следующий код в рекурсивный метод сортировки вставками, но, как бы я ни старался, мне это не удается. Кто-нибудь может мне помочь?
public static void insertionSort(int[] array){
for (int i = 1; i < array.length; i++){
int j = i;
int B = array;
while ((j > 0) && (array[j-1] > B)){
array[j] = array[j-1];
j--;
}
array[j] = B;
}
}
РЕДАКТИРОВАТЬ:
Я думал о чем-то подобном, но мне это не кажется очень рекурсивным...
public static void insertionSort(int[] array, int index){
if(index < array.length){
int j = index;
int B = array[index];
while ((j > 0) && (array[j-1] > B)){
array[j] = array[j-1];
j--;
}
array[j] = B;
insertionSort(array, index + 1);
}
}
Подробнее здесь: https://stackoverflow.com/questions/805 ... rtion-sort