Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.041 c
2-1147852228
dest81
2006-05-17 11:50
2006.06.04
Задержка меньше 1 мс


2-1147717358
Mr tray
2006-05-15 22:22
2006.06.04
lower/uppercase с символами киррилицы


15-1147414464
Ламот
2006-05-12 10:14
2006.06.04
Диспетчер сервера терминалов отображает не всех пользователей


15-1147080257
Барабан
2006-05-08 13:24
2006.06.04
С какой целью интересуются?


15-1147322759
pavelf
2006-05-11 08:45
2006.06.04
Удаление папки




   Наверх