Помощь - Поиск - Пользователи - Календарь
Полная версия: сортировка по алгоритму Фалька
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
мисс_граффити
помогите пожалуйста.
есть процедура, использующая алгоритм Фалька для сортировки записей по двум младшим байтам неотрицательного ключа:
Type zap=Record key:0..65535; k,y:real end;
chain=array of integer;
procedure SortWord (var x:array of zap; var cep:chain);
var a,b:array [0..255] of integer;
j,k,n:integer;
begin
n:=High(x)+1;
SetLength(cep,n+1);
for k:=0 to 255 do
a[k]:=-1;
for j:=0 to High(x) do
begin
k:=Lo(x[j].key);
if a[k]<0 then a[k]:=j
else cep[b[k]]:=j;
b[k]:=j
end;
j:=n;
for k:=0 to 255 do
if a[k]>-1 then
begin
cep[j]:=a[k];
a[k]:=-1;
j:=b[k];
end;
cep[j]:=-1;
j:=cep[n];
repeat
k:=Lo(x[j].key shr 8);
if a[k]<0 then a[k]:=j
else cep[b[k]]:=j;
b[k]:=j;
j:=cep[j];
until j<0;
j:=n;
for k:=0 to 255 do
if a[k]>-1 then
begin
cep[j]:=a[k];
j:=b[k]
end;
cep[j]:=-1
end;

как ее можно использовать, чтобы действительно что-то сортировала? и как можно увидеть результаты этой сортировки.
вообще ничего не понимаю sad.gif
спасибо.
WishMaster
Я бы тебе посоветовал почитать FAQ ,раздел использование процедур и функций no1.gif
volvo
WishMaster, тебе бы, кстати, тоже неплохо было почитать... Например, вопрос внимательно...

Что спрашивалось? Как проверить работоспособность процедуры. Процедура компилируется, все с этим в порядке. Флейм с твоей стороны? Напрасно. Это жестоко наказывается...

мисс_граффити, насчет процедуры... Я тестил ее в пошаговом режиме. Она без отключения оптимизации у меня не отрабатывала, как положено (массив Cep не заполнялся). Сегодня вечером попробую прогнать без оптимизации, хотя есть подозрение, что алгоритм нерабочий... Ты откуда это выкопала? Ссылкой не поделишься?
WishMaster
Прошу глубочайшего извинения wub.gif
мисс_граффити
Цитата(volvo @ 22.06.2006 16:39) *

мисс_граффити, насчет процедуры... Я тестил ее в пошаговом режиме. Она без отключения оптимизации у меня не отрабатывала, как положено (массив Cep не заполнялся). Сегодня вечером попробую прогнать без оптимизации, хотя есть подозрение, что алгоритм нерабочий... Ты откуда это выкопала? Ссылкой не поделишься?

Из книжки... Зубов, Шевченко. Структуры и методы обработки данных: Практикум в среде Delphi.
В принципе, где она была нужна - засунула другой вариант сортировки(работающий без проблем). С этой уже просто интересно разобраться.
мисс_граффити
WishMaster, спасибо за совет smile.gif)) к сожалению, не нашла там ответа на свой вопрос.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.