Программа будет сортировать список методом выбора (Selection sort).

Суть сортировки
- В неотсортированном подмассиве ищется локальный максимум (минимум).
- Найденный максимум (минимум) меняется местами с последним (первым) элементом в подмассиве.
- Если в массиве остались неотсортированные подмассивы — смотри пункт 1.
Шаги к правильному решению
- Создадим функцию
selection_sort, которая принимает на вход список. - Внутри функции создадим цикл с переменной
i, которая будет исчисляться с 0 до (длины списка - 1) - Создадим переменную
smallest = i. - Создадим внутренний цикл с переменной
jотi + 1до (длины списка - 1). - Внутри этого цикла, если
j-элемент (элемент под индексомj) меньше, чем элемент с индексомsmallest, тогда устанавливаемsmallest = j. - После завершения внутреннего цикла меняем местами элементы под индексами i и smallest.
Исходный код для сортировки выбором:
def selection_sort(alist):
for i in range(0, len(alist) - 1):
smallest = i
for j in range(i + 1, len(alist)):
if alist[j] < alist[smallest]:
smallest = j
alist[i], alist[smallest] = alist[smallest], alist[i]
alist = input('Enter the list of numbers: ').split()
alist = [int(x) for x in alist]
selection_sort(alist)
print('Sorted list: ', end='')
print(alist)
