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

258
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
Запуск процесса в памяти в бесконечном цикле

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

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

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

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

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

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

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

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

361