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

Вниз

Вопросы по розрядной сортировке   Найти похожие ветки 

 
Alien1769 ©   (2006-05-11 17:08) [0]

Хотелось бы задать вопросы Роману Игнатьеву, автору статьи по разрядной сортировке. Очень хорошая статейка, пытался отправить ему вопросы на почтовый ящик, указанный на ссылке его статьи но ответа не получил, возможно он его сменил. Не подскажите новый ?


 
Romkin ©   (2006-05-11 17:18) [1]

Не сменил, я просто редко его проверяю, особенно по праздникам :)
А что такое "пустой элемент"?
Программу, естественно, я тестировал. Все должно работать.
Если ты нашел ошибку - дай тестовый случай.


 
Romkin ©   (2006-05-11 17:19) [2]

PS. Отсутствие ошибок в любой моей программе гарантировать не могу ;)
Скорее, могу гарантировать их присутствие


 
Alien1769 ©   (2006-05-11 17:34) [3]


> Программу, естественно, я тестировал. Все должно работать.
>  
> Если ты нашел ошибку - дай тестовый случай.


Предварительно готовится массив Bucket по принципу
Bucket[0].Key:=255;Bucket[1].Key:=254;Bucket[2].Key:=253;
...... Bucket[254].Key:=1;Bucket[255].Key:=0;
У меня возникает ошибка зацикливания после Bucket[128].
Возможно я не правильно понимаю алгоритм ?


 
Romkin ©   (2006-05-11 17:56) [4]

При чем здесь массив? Подаваться должен однонаправленный список!
Например, так:
var
 FList: PDList;

procedure RandomFill;
var
 i, j: integer;
 elem: PDList;
 FirstElem: TDList;
 ListTail: PDList;
 Key: LongWord;
begin
 ListTail := @FirstElem;
 for i := 1 to 5000 do
 begin
   New(elem);
   ListTail^.Next := elem;
   ListTail := elem;
   Key := 0;
   for j := 0 to 3 do
     Key := Key shl 8 or random(256);
   elem^.Key := Key;
 end;
 ListTail^.Next := nil;
 FList := FirstElem.Next;
end;

И если все нормально, в частности, последний next = nil, зацикливания просто не может быть. Единственный цикл с произвольным количеством проходов (repeat) останавливается при нахождении nil. Все остальные циклы - с фиксированным количеством проходов.


 
Alien1769 ©   (2006-05-11 18:11) [5]


> При чем здесь массив? Подаваться должен однонаправленный
> список!


Большое Спасибо, а то я уже два мучаюсь !!



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
2-1148038893
ttt_111
2006-05-19 15:41
2006.06.04
Работа с БД.


2-1148045632
tort
2006-05-19 17:33
2006.06.04
Запуск программы


11-1128018077
Zoom
2005-09-29 22:21
2006.06.04
Как убрать приложение с таскбара...


15-1146150464
oldman
2006-04-27 19:07
2006.06.04
У кого есть "M.A.S.H." ???


2-1146828997
JorSand
2006-05-05 15:36
2006.06.04
НОВОЕ в MDI