|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Victor Anikeev 2:5043/3.88 25 May 2003 01:55:06 To : All Subject : координаты --------------------------------------------------------------------------------
Есть матрица размером 256x256 и список координат в ней.
Очень важным является порядок координат.
Более 90% соседних пар координат расположены в соседних ячейках
(то есть abs(X1-X2) <= 1 AND abs(Y1-Y2) <= 1 ).
Сам список на много меньше чем 65536, то есть процент заполнения
матрицы точками не очень большой. В любом случае не превышает 40-50%.
Как наиболее эффективно хранить список в плане занимаемого места?
У меня есть только одна идея.
1. Разбить все координаты на непрерывные группы и в начале каждой группы
записать ее размер. Следующие два байта - точные координаты первой точки.
Далее только смещения. Так как соседних ячеек восемь, то достаточно трех
бит на запись.
Может быть далее сжать все это с помощью RLE или другого простого
алгоритма.
Какие есть еще предложения? Мне нужен как можно меньший размер списка
в памяти.
Было не очень страшно. Пока. *Victor*
[Сейчас пьется: Martini Bianco со льдом]
... [.asm.cpp.pas.] [q3.level.design] [demo.making] [i.girls]
--- [mgl@pisem.net] [mglmap.narod.ru] [icq91208291]
* Origin: Южно-Сахалинск, Россия (2:5043/3.88)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/28423ecf8820.html, оценка из 5, голосов 10
|