Автор: Eugene D. Shelwien,
13 августа 2003 года в 03:12:29
В ответ на : Re: Вопрос: поиск подстрок в LZ сортировкой от Никита Лесников
в 12 августа 2003 года в 09:49:23:
Hi!> > Чей-то я не понял, как должен работать > > декодер. Допускаются ссылки только > > на прошлый блок? ;) > > Да. При ссылках на любую подстроку > значительно усложняется декодер. А > простой и быстрый декодер - IMHO, > главное достоинство LZ. Без близких ссылок будет плохо, LZ и так именно из-за них сильно проигрывает PPM в сжатии (изредка выигрывая за счет дальних ;) > Кстати, есть ли вообще алгоритмы, > использующие LZ77-ссылки в будущее? Алгоритм придумать несложно. Вот о реализациях не слышал. > SEQUITUR не предлагать! :) Это о перестановке слов? Так вроде секветур там только для парсинга использовался... > Именно. А вся затея как раз в том, чтобы > строить дерево только один раз для всего > блока. Тогда уж имхо лучше подумать над построением словаря. Если его давить специализированной моделью (PPM), то можно будет и скорость (асимптотическую ;) сохранить и эффективность повысить. > Плюс ко всему дерево это идеально > сбалансировано. Поэтому на больших > (соизмеримых с размером блока) словарях > в идеале только поиски должны быть в 2 > раза быстрее (т.к. высота RB и AVL > деревьев не превышает 2*Logn). Не говоря > о том, что добавления и удаления вообще > не нужны. Ага. А хэшей не существует. > > > Мне бы хотелось узнать мнение > > > специалистов об этом алгоритме. > > > Достаточно ли он эффективен, > > > чтобы его применять на практике? > > > Вообще-то непохоже. ;) > > Кстати, следует еще упомянуть > исключительную простоту реализации. Да уж. Особенно в сравнении с полным сканированием окна ;) Имхо вообще сейчас люди если для PC LZ-кодеры и пишут, то многопроходные и с замашками на оптимальное разбиение - потом меряются, у кого zip меньше. А для этого структуры данных совсем другие нужны. > Но несмотря на нее, у меня что-то нет > особого желания проверять этот алгоритм, > так как может оказаться, что он - > нерабочий труп. Если же кому-то кажется, > что он достаточно практичен, то, > пожалуйста, черкните пару строк. Вообще-то речь шла не об алгоритме, а о СД. Имхо если начинать с СД, то конкурентноспособного LZ-компрессора не получится ;) > Regards, > Никита Лесников > (mailto: nlo_one@mail.ru) Счастливо! - Шелвин
|