Структуры и алгоритмы данных Python: сортировка списка элементов с использованием сортировки Selection
Поиск и сортировка Python: упражнение 20 с решением
Напишите программу на Python для сортировки списка элементов, используя сортировку Selection.
Согласно Википедии «В компьютерной науке сортировка выбора является алгоритмом сортировки, в частности сортировкой по месту. Она имеет временную сложность O (n2), что делает ее неэффективной в больших списках и в целом работает хуже, чем аналогичная сортировка вставкой».
Пример решения :
Код Python:
def selection_sort(nums):
for i, n in enumerate(nums):
mn = min(range(i,len(nums)), key=nums.__getitem__)
nums[i], nums[mn] = nums[mn], n
return nums
user_input = input("Input numbers separated by a comma:\n").strip()
nums = [int(item) for item in user_input.split(',')]
print(selection_sort(nums))
Пример вывода:
Введите числа, разделенные запятой: 15, 79, 25, 37, 68 [15, 25, 37, 68, 79]
Блок - схема:
Редактор кода Python:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на Python для сортировки списка элементов, используя сортировку Radix.
Далее: Напишите программу на Python для сортировки списка элементов с использованием сортировки по времени.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования