Сортировка выборками (Selection Sort):
public class SelectionSort {
public static void sort(int[] arr) {
for (int barrier = 0; barrier < arr.length - 1; barrier++) {
for (int index = barrier + 1; index < arr.length; index++) {
if (arr[barrier] > arr[index]) {
int tmp = arr[index];
arr[index] = arr[barrier];
arr[barrier] = tmp;
}
}
}
}
}
Пример использования:
import java.util.Arrays;
public class SelectionSortTest {
public static void main(String[] args) {
int[][] data = {
{},
{1},
{2, 1},
{4, 6, 2},
{0, 3, 2, 1},
{6, 8, 3, 100, 5, 4, 1, 2, 0, 9, 7},
};
for (int[] arr : data) {
System.out.print(Arrays.toString(arr) + " -> ");
SelectionSort.sort(arr);
System.out.println(Arrays.toString(arr));
}
}
}
>> [] -> []
>> [1] -> [1]
>> [2, 1] -> [1, 2]
>> [4, 6, 2] -> [2, 4, 6]
>> [0, 3, 2, 1] -> [0, 1, 2, 3]
>> [6, 8, 3, 100, 5, 4, 1, 2, 0, 9, 7] -> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 100]
Лабораторные
Задания лабораторных можно прочитать на этой странице.
К этой странице относится лабораторная proc.loop.selection_sort_optimized.