Сортировка пузырьком (англ. Bubble sort) — для каждой пары индексов производится обмен, если элементы расположены не по порядку. Сложность алгоритма:
Сортировка перемешиванием (англ. Cocktail sort). Сложность алгоритма:
Сортировка вставками (англ. Insertion sort) — определяем, где текущий элемент должен находиться в упорядоченном списке, и вставляем его туда. Сложность алгоритма:
Гномья сортировка (англ. Gnome sort; первоначально опубликована под названием «глупая сортировка» [stupid sort] за простоту реализации) — сходна с сортировкой вставками. Сложность алгоритма рекурсивная версия требует дополнительно {\displaystyle памяти.
Сортировка слиянием (англ. Merge sort) — выстраиваем первую и вторую половину списка отдельно, а затем объединяем упорядоченные списки. Сложность алгоритма: . Требуется дополнительной памяти.
Сортировка с двоичного дерева (англ. Tree sort). Сложность алгоритма: в лучшем случае, a в худшем. Требуется O(n) дополнительной памяти.
Сортировка Timsort (англ. Timsort) — комбинированный алгоритм (используется сортировка вставками и сортировка слиянием). Сложность алгоритма. Требуется дополнительной памяти. Разработан для использования в языке Python.
7
Объяснение:
Алгоритмы устойчивой сортировки :
Сортировка пузырьком (англ. Bubble sort) — для каждой пары индексов производится обмен, если элементы расположены не по порядку. Сложность алгоритма:
Сортировка перемешиванием (англ. Cocktail sort). Сложность алгоритма:
Сортировка вставками (англ. Insertion sort) — определяем, где текущий элемент должен находиться в упорядоченном списке, и вставляем его туда. Сложность алгоритма:
Гномья сортировка (англ. Gnome sort; первоначально опубликована под названием «глупая сортировка» [stupid sort] за простоту реализации) — сходна с сортировкой вставками. Сложность алгоритма рекурсивная версия требует дополнительно {\displaystyle памяти.
Сортировка слиянием (англ. Merge sort) — выстраиваем первую и вторую половину списка отдельно, а затем объединяем упорядоченные списки. Сложность алгоритма: . Требуется дополнительной памяти.
Сортировка с двоичного дерева (англ. Tree sort). Сложность алгоритма: в лучшем случае, a в худшем. Требуется O(n) дополнительной памяти.
Сортировка Timsort (англ. Timsort) — комбинированный алгоритм (используется сортировка вставками и сортировка слиянием). Сложность алгоритма. Требуется дополнительной памяти. Разработан для использования в языке Python.