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

Материал из Викиконспекты
Версия от 13:47, 20 мая 2012; Krotser (обсуждение | вклад) (Задача сортировки)
Перейти к: навигация, поиск

Сортировка выбором (англ. selection sort) - это простой алгоритм сортировки со сложностью [math]O(n^2)[/math], где [math]n[/math] - количество элементов для сортировки. Сортировка выбором предназначена для решения задачи сортировки (sorting problem).

Задача сортировки

На входе последовательность из [math]n[/math] чисел.

На выходе отсортированная последовательность по возрастанию.

Алгоритм

1. Находим номер минимального элемента из массива.

2. Меняем минимальный элемент с первым.

3. Новый массив начинается со следующего элемента, так как все предыдущие элементы уже отсортированы. Перейти к шагу 1, если массив не пустой.

Реализация

 // Входной массив x, содержащий n элементов.
 for (i = 0 to n - 1)
    int min = i;
       for (j = i + 1 to n - 1)
          if (x[j] < x[min])
             min = j;
    swap(x[i], x[min]);
 // Массив x отсортирован

Ссылки

Литература

  • Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы: построение и анализ, 2-е издание. М.: Издательский дом "Вильямс", 2005. ISBN 5-8459-0857-4