Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.09;
Скачать: CL | DM;

Вниз

Очень сложная задача на сортировку   Найти похожие ветки 

 
Igorek ©   (2003-12-19 15:48) [0]

Дан массив из N элементов. Есть Boolean функция Max - сравнения двух элементов.

Написать процедуру, которая выдает массив индексов элементов по возрастанию, при этом минимально возможное колличество раз вызывая ф-цию Max.


 
Семен Сорокин ©   (2003-12-19 15:52) [1]

Загнать массив в TList, обработать Sort...
Функция Max - ни разу не выховется :))


 
MBo ©   (2003-12-19 15:55) [2]

Уточни - Max здесь означает
function AGreaterThanB(A,B:Integer):Boolean;
так?

И еще один момент - элементы массива - целые или любые, на которых определено отношение порядка (><=)?


 
Igorek ©   (2003-12-19 16:26) [3]


> MBo © (19.12.03 15:55) [2]
> Уточни - Max здесь означает
> function AGreaterThanB(A,B:Integer):Boolean;
> так?

Да. Равно True, когда А >B, иначе False.

> И еще один момент - элементы массива - целые или любые,
> на которых определено отношение порядка (><=)?

Любые. Впрочем это нам неизвесно. Дана только функция сравнения и то, что для них справедливо отношение транзитивности.


 
Romkin ©   (2003-12-19 16:32) [4]

ответ: N*Log(N) раз (логарифм по основанию 2)


 
Digitman ©   (2003-12-19 16:34) [5]

QuickSort - достаточно оптимальный алгоритм, если распределение заранее неизвестно и не имеет заранее огрворенных закономерностей


 
Romkin ©   (2003-12-19 16:36) [6]

ЭЭ! Он может и на N^2 выскочить



Страницы: 1 вся ветка

Текущий архив: 2004.01.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
14-25587
DelphiN!
2003-12-17 08:56
2004.01.09
Прога для маштабного изменения веб страниц


1-25373
Indy
2003-12-25 04:45
2004.01.09
Документация по Indy


1-25313
Seldon
2003-12-22 18:41
2004.01.09
Заморозить форму.


1-25419
Oleg Barsky
2003-12-24 14:09
2004.01.09
MoveFile в консольном приложении


7-25619
dolphin1
2003-10-26 11:32
2004.01.09
не могу поставить ловушку