Сортировка выбором

Материал из Поле цифровой дидактики
Версия от 23:15, 15 декабря 2022; Patarakin (обсуждение | вклад) (Новая страница: «{{Scripting Tutorials |Description='''Сортировка выбором''' (''Selection sort'') — алгоритм сортировки. |Field_of_knowledge=Информатика }} '''Сортировка выбором''' (''Selection sort'') — алгоритм сортировки. Может быть как устойчивый, так и неустойчивый. Шаги алгоритма: # находим номер минималь...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Описание Сортировка выбором (Selection sort) — алгоритм сортировки.
Область знаний Информатика
Область использования (ISTE)
Возрастная категория


Поясняющее видео
Близкие рецепту понятия
Среды и средства для приготовления рецепта:

Сортировка выбором (Selection sort) — алгоритм сортировки. Может быть как устойчивый, так и неустойчивый.

Шаги алгоритма:

  1. находим номер минимального значения в текущем списке
  2. производим обмен этого значения со значением первой неотсортированной позиции (обмен не нужен, если минимальный элемент уже находится на данной позиции)
  3. теперь сортируем хвост списка, исключив из рассмотрения уже отсортированные элементы


template <typename type_arr>
void selection_sort(type_arr *arr, int size)
{
    for (int i = 0; i < size - 1; i++)
    {
        int min_index = i;
        for (int j = i + 1; j < size; j++)
        {
            if (arr[j] < arr[min_index])
            {
                min_index = j;
            }
        }
        if (min_index != i)
        {
            swap(arr[i], arr[min_index]);
        }
    }
}