Худший случай быстрой сортировки
От: Буравчик Россия  
Дата: 15.09.15 19:48
Оценка: 5 (1)
Есть быстрая сортировка

void quick_sort(int * a, int left, int right, int & count) {
    int key = a[ (left + right) / 2 ];
    int i = left;
    int j = right;
    
    do {
        while (++count, a[i] < key) ++i;
        while (++count, key < a[j]) --j;
        
        if (i <= j) {
            swap(a[i], a[j]);
            ++i, --j;
        }
    } while (i <= j);
    
    if (left < j) quick_sort(a, left, j, count);
    if (i < right) quick_sort(a, i, right, count);
}


Напишите программу, которая для заданного N формирует перестановку чисел от 1 до N чтобы count (количество перестановок) был максимальным. Является ли найденный вариант перестановки также худшим случаем в отношении глубины рекурсии?

Навеяно/взято с http://dxdy.ru/topic98700.html
Best regards, Буравчик
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.