IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> сортировка по алгоритму Фалька, ...и куда это запихнуть?
мисс_граффити
сообщение 21.06.2006 16:59
Сообщение #1


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


помогите пожалуйста.
есть процедура, использующая алгоритм Фалька для сортировки записей по двум младшим байтам неотрицательного ключа:
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
спасибо.


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
WishMaster
сообщение 22.06.2006 15:33
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской
Реальное имя: Юрий

Репутация: -  0  +


Я бы тебе посоветовал почитать FAQ ,раздел использование процедур и функций no1.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 22.06.2006 15:39
Сообщение #3


Гость






WishMaster, тебе бы, кстати, тоже неплохо было почитать... Например, вопрос внимательно...

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

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


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской
Реальное имя: Юрий

Репутация: -  0  +


Прошу глубочайшего извинения wub.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 23.06.2006 16:43
Сообщение #5


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Цитата(volvo @ 22.06.2006 16:39) *

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

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


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 23.06.2006 16:43
Сообщение #6


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


WishMaster, спасибо за совет smile.gif)) к сожалению, не нашла там ответа на свой вопрос.

Сообщение отредактировано: мисс_граффити - 23.06.2006 16:45


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.06.2025 3:15
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"