Форум: "Базы";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];
Вниз
Более быстрый алгоритм? Найти похожие ветки
← →
Immortal_Death (2003-11-05 09:05) [0]Может кто ни будь предложит более быстродействующую схему, чем у меня.
У меня есть некие записи структура которых выглядит примерно так:
type
PWord = ^TWord;
TWord = record
Sym: String[1];
Wor: Word;
ListSym: TList;
end;
Кроме того у меня есть Tlist и не один. В TList я помещаю указатели на записи, в каждой записи у меня есть указатель на TList (ListPodSymbol: TList;), т.е. некая иерархия вложенности: в лист записи -> в запись лист -> в лист записи. Заранее не известно не кол-во указателей как вообще, так и в отдельном листе(но в отдельном листе максимальное кол-во указателей может быть не более 70), так неизвестно и кол-во листов(кол-во вложенных листов/записей, начиная от навального, ограниченно 20-тью). На этом сюрпризы не кончаются, вот этих "массивов" данных может быть и есть не один, а сохранить надо в одном файле.
Собственно говоря, я вижу только один путь:
создавать типизированный файл с полями приведенными в таблице ниже:
п\п.|..массив..|..лист..|...запись...|...ссылки..|.доп1.|.доп2.|...
------------------------------------------------------------------------...
.1...|.......1........|.....1.....|.......1........|.......2........|....-.....|....-.....|....
.2...|.......1........|.....1.....|.......2........|.......3........|....-.....|....-.....|....
.3...|.......1........|.....1.....|.......3........|.......0........|....-.....|....-.....|....
.4...|.......1........|.....1.....|.......4........|.......4........|....-.....|....-.....|....
.5...|.......1........|.....1.....|.......5........|.......0........|....-.....|....-.....|....
.6...|.......1........|.....2.....|.......1........|.......2........|....-.....|....-.....|....
.7...|.......1........|.....2.....|.......2........|.......3........|....-.....|....-.....|....
.8...|.......1........|.....2.....|.......3........|.......0........|....-.....|....-.....|....
.9...|.......1........|.....2.....|.......4........|.......0........|....-.....|....-.....|....
...
...
...
п\п - порядковый номер в БД.
массив - сумма независимых листотв и записей.
лист - отдельный лист в массиве
запись - запись в листе
ссылки - ссылки в записи на остальные листы
доп1, доп2 - необязательные параметры записи.
Минусы только в скорости. Может можно построить более рационально, точнее не столько рационально сколько быстро?
← →
Immortal_Death (2003-11-05 09:09) [1]вместо (ListPodSymbol: TList;), читать (ListSym: TList; )
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.017 c