Python 3.7.4 64b
Задача: нужно отсортировать по возрастанию список, состоящий из рациональных чисел
Моя реализация
import random def sort_min(slist): for i in range(0, len(slist)): m = min(slist[i:]) mi = slist.index(m) slist[mi], slist[i] = slist[i], slist[mi] return slist limit = int(input()) items = [] while (len(items) < limit): items.append(round(random.uniform(0, 1000), 2)) internal_sort_result = sorted(items) my_sort_result = sort_min(items) print(internal_sort_result == my_sort_result) # print(my_sort_result)
При количестве элементов 100, как правило сортировка сходится с встроенной. При 300, в 80% сходится. А вот при 1000 элементов, 100% не сходится.
Хотелось бы понять почему так, что я не учел?
Заранее спасибо!