Пирамидальная сортировка на с++

267
02 ноября 2017, 07:07

Хочу сделать сортировку пирамидальную (обратную) То есть что бы массив в котором есть числа 4,5,3,0 отсортировало не так 0,3,4,5, а так 5,4,3,0. Вот функции для нахождения(от меньшего к большому)

template<typename T>
void downHeap(T a[], long k, long n)
{
    T new_elem;
    long number;
    new_elem = a[k];
    while(k <= n/2)
{
        number = 2*k;
        if( number < n && a[number] < a[number+1] )
            number++;
        if( new_elem >= a[number] ) break;
        // иначе
        a[k] = a[number];
        k = number;
    }
    a[k] = new_elem;
}
template<typename T>
void heapSort(T a[], long size)
{
    long i;
    T temp;
    for(i=size/2-1; i >= 0; i--) downHeap(a, i, size-1);
    for(i=size-1; i > 0; i--)
    {
        temp=a[i]; a[i]=a[0]; a[0]=temp;
        downHeap(a, 0, i-1);
         }
} 
READ ALSO
Запуск процесса в памяти в бесконечном цикле

Запуск процесса в памяти в бесконечном цикле

Написать программу, которая бы запускала в памяти еще один процесс и оставляла бы его работать в бесконечном циклеПри повторном запуске...

219
Исключить нажатие кнопок по событию keyup

Исключить нажатие кнопок по событию keyup

Всем приветЕсть такой скрипт

274
Библиотека документов Sharepoint

Библиотека документов Sharepoint

Доброго времени суток! Подскажите, как получить весь список файлов и папок содержащихся в библиотеке? Не могу разобраться, почему то функция...

368