Здравствуйте, Буравчик, Вы писали:
Б>Есть быстрая сортировка
Б>Б>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
Точно перестановок?
Приведенная реализация считает число сравнений ...