Инкрементное кодирование - Incremental encoding
Инкрементное кодирование , также известное как переднее сжатие , обратное сжатие или переднее кодирование , представляет собой тип алгоритма сжатия дельта-кодирования , при котором общие префиксы или суффиксы и их длина записываются, так что их не нужно дублировать. Этот алгоритм особенно хорошо подходит для сжатия отсортированных данных , например, списка слов из словаря .
Например:
Вход | Общий префикс | Сжатый вывод |
---|---|---|
myxa myxophyta myxopod nab nabbed nabbing nabit nabk nabob nacarat nacelle |
no preceding word 'myx' 'myxop' no common prefix 'nab' 'nabb' 'nab' 'nab' 'nab' 'na' 'nac' |
0 myxa 3 ophyta 5 od 0 nab 3 bed 4 ing 3 it 3 k 3 ob 2 carat 3 elle |
64 байта | 46 байт |
Кодировка, используемая для хранения самой общей длины префикса, варьируется от приложения к приложению. Типичные методы заключаются в хранении значения как одного байта; дельта-кодирование , при котором сохраняется только изменение общей длины префикса; и различные универсальные коды . Его можно комбинировать с другими общими методами сжатия данных без потерь , такими как энтропийное кодирование и словарные кодеры, для сжатия оставшихся суффиксов.
Приложения
Инкрементное кодирование широко используется при поиске информации для сжатия лексиконов, используемых в поисковых индексах ; в них перечислены все слова, найденные во всех документах, и указатель для каждого из них на список местоположений. Обычно он сжимает эти показатели примерно на 40%.
В качестве одного примера, инкрементное кодирование используется в качестве отправной точки утилитой GNU locate в указателе имен файлов и каталогов. GNU найти коммунальное дальнейшее использование Биграммных кодирований для дальнейшего сокращения популярных Filepath префиксов.
Рекомендации
- ^ Ян Х. Виттен, Алистер Моффат, Тимоти С. Белл. Управление гигабайтами. Второе издание. Академическая пресса. ISBN 1-55860-570-3 . Раздел 4.1: Доступ к лексикону, подраздел Переднее кодирование, стр. 159–161.
Это хранение данных компьютерной информации о связанном программном обеспечении статья заглушка . Вы можете помочь Википедии, расширив ее . |