Главная страница
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.031 c
1-25306
Мефодий
2003-12-22 22:09
2004.01.09
Эмуляция клика мыши в другой прогроамме


4-25667
Gilk
2003-11-05 15:35
2004.01.09
Статус завершения работы с документом


14-25524
NeyroSpace
2003-12-19 15:42
2004.01.09
Что с принтером (или с LPT портом)?


1-25285
Аноним
2003-12-23 12:57
2004.01.09
как узнать размер переменой?


3-25254
zzzrrv
2003-12-10 11:40
2004.01.09
SQL