Сегодня расскажу про методы сортировки
В данной статье пойдет речь про:
Если у кого возник вопрос какая сортировка самая быстрая - это надо обращаться к понятию о сложности алгоритма.
По простому для коллекций элементов количеством меньше чем 1000 лучшим образом отрабатывают как не странно пузырьковая сортировка и сортировка вставками, а для коллекций с количеством элементов > 1000 наилучшим образом отрабатывают сортировка выбором и быстрая.
А пока - из предложенных быстрая сортировка показывает себя наилучшим образом.
В пайтоне с коробки реализованы сортировки для коллекций разных размеров:
для малых - insertion sort
для больших - merge sort
Если было полезно или интересно ставь лайк!)
Еще нашел прикольный сайт с
В данной статье пойдет речь про:
- Сортировка выбором
- Сортировка вставками
- Сортировка “Методом пузырька”
- Сортировка Шелла
- Быстрая сортировка
Python:
def choise_sort(data):
for i, e in enumerate(data):
min_el = min(range(i, len(data)), key=data.__getitem__)
data[i], data[min_el] = data[min_el], e
return data
Python:
def insertion_sort(data):
for i in range(len(data)):
j = i - 1
key = data[i]
while data[j] > key and j >= 0:
data[j + 1] = data[j]
j -= 1
data[j + 1] = key
return data
Python:
def buble_sort(my_list):
for i in range(len(my_list)):
for in_element in range(1, len(my_list)):
if my_list[in_element] < my_list[in_element - 1]:
my_list[in_element], my_list[in_element - 1] = my_list[in_element - 1], my_list[in_element]
return my_list
Python:
def quick_sort(data):
if len(data) <= 1:
return data
q = random.choice(data)
l_data = [n for n in data if n < q]
e_data = [q] * data.count(q)
r_data = [n for n in data if n > q]
return quick_sort(l_data) + e_data + quick_sort(r_data)
По простому для коллекций элементов количеством меньше чем 1000 лучшим образом отрабатывают как не странно пузырьковая сортировка и сортировка вставками, а для коллекций с количеством элементов > 1000 наилучшим образом отрабатывают сортировка выбором и быстрая.
А пока - из предложенных быстрая сортировка показывает себя наилучшим образом.
В пайтоне с коробки реализованы сортировки для коллекций разных размеров:
для малых - insertion sort
для больших - merge sort
Если было полезно или интересно ставь лайк!)
Еще нашел прикольный сайт с
Ссылка скрыта от гостей
Последнее редактирование модератором: