PYTHON ПИРАМИДАЛЬНАЯ СОРТИРОВКА

Python пирамидальная сортировка - это алгоритм сортировки, который использует пирамиду для сравнения и перестановки элементов массива. Пирамида - это структура данных, которая позволяет хранить элементы в виде дерева, где каждый элемент имеет не более двух потомков.

Суть алгоритма заключается в построении пирамиды из элементов неотсортированного массива, после чего последовательным извлечением максимального элемента из пирамиды и перемещением его в конец массива происходит сортировка.

Пример кода на Python:

def heapify(arr, n, i):
largest = i
l = 2 * i + 1
r = 2 * i + 2
if l < n and arr[largest] < arr[l]:
largest = l
if r < n and arr[largest] < arr[r]:
largest = r
if largest != i:
arr[i], arr[largest] = arr[largest], arr[i]
heapify(arr, n, largest)
def heapSort(arr):
n = len(arr)
for i in range(n // 2 - 1, -1, -1):
heapify(arr, n, i)
for i in range(n - 1, 0, -1):
arr[0], arr[i] = arr[i], arr[0]
heapify(arr, i, 0)

Данный код реализует пирамидальную сортировку с помощью рекурсивной функции heapify и двух циклов в функции heapSort.

АиСД S01E02. Структуры данных. Куча. Сортировка кучей

6. Пирамидальная сортировка (реализация на Python)

Задача из Собеседования на 160,000 Евро в Год

HeapSort (Пирамидальная сортировка)

Алгоритм пирамидальной сортировки Heap Sort - Python

Сортировка кучей (пирамидальная сортировка) :: Heap sort

Как отсортировать словарь Python. Сортировка словаря по значениям

Алгоритмы поиска и сортировки: Пирамидальная сортировка. Центр онлайн-обучения «Фоксфорд»

1.7.1 Решение heapsort(сортировка кучи) на Java

BLGPG-4CCD3907AF0E-24-09-19-20

Новые материалы: