Я искал рекурсивную сортировку выбора, используя только 2 параметра:
- Массив, который должен быть отсортирован
- значение k, которое указывает, до какого элементаон должен быть отсортирован.
Пример: SelectionSort (array [] a, int k) с существом {6,3,5,7,2} и k, равным 2, отсортирует первые 3элементы, и оставит последние элементы нетронутыми.
Я думал о том, чтобы начать с оператора if, если k равно 0, и если бы это было так, он просто вернул бы массив как есть, так как выЯ не могу отсортировать массив размером 1. Что-то вроде:
public int[] sort(int[] a){
a = selectionSort(a, n-1);
return a;
}
public int[] selectionSort(int[] a, int k){
if (k = 0){
return a;
}
else{
selectionSort(a, k-1 );
... (part i really don't know)
}
Я понятия не имею, как выполнить часть 'else', так как знаю только, что он должен вызывать метод снова.Мне не разрешено создавать другие методы.Мне также нужно убедиться, что я использую ровно 2 параметра, ни больше, ни меньше.
Мне нужно разобраться с этим в псевдокоде, но я понимаю кое-что на Java, так что если кто-то может помочь мне, используя любой псевдоили Java, это было бы так полезно