Сортировка выбором — различия между версиями
Krotser (обсуждение | вклад) (→Алгоритм) |
Krotser (обсуждение | вклад) |
||
Строка 14: | Строка 14: | ||
3. Если список пуст, то массив отсортирован. Иначе вернемся к шагу 1, убрав первый элемент из списка. | 3. Если список пуст, то массив отсортирован. Иначе вернемся к шагу 1, убрав первый элемент из списка. | ||
+ | |||
+ | == Пример == | ||
+ | |||
+ | Пусть дана последовательность из 5 элементов. | ||
== Реализация == | == Реализация == |
Версия 14:05, 20 мая 2012
Сортировка выбором (англ. selection sort) - это простой алгоритм сортировки со сложностью
, где - количество элементов для сортировки. Сортировка выбором предназначена для решения задачи сортировки (sorting problem).Задача сортировки
На входе последовательность из
чисел.На выходе отсортированная последовательность по неубыванию.
Алгоритм
0. Назовем элементы массива списком.
1. Находим номер минимального элемента из текущего списка.
2. Меняем минимальный элемент с первым элементом списка.
3. Если список пуст, то массив отсортирован. Иначе вернемся к шагу 1, убрав первый элемент из списка.
Пример
Пусть дана последовательность из 5 элементов.
Реализация
// Входной массив 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