Задача «Пирамидальная сортировка»

Реализовать алгоритм пирамидальной сортировки.

def heap_sort(arr):
    ...

Работу алгоритма протестировать с помощью assert. Особое внимание уделить краевым случаям: len=0, len1. Дополнительно реализовать тест генерации случайных массивов случайного размера с сортировкой и последующей проверкой.