Опрос

Какой архиватор наиболее эффективный?:

Новички

Виктор Васильев
Юрий Антонов
Сергей Андреевич
Генадий
Avanasy

Вопросы для самоконтроля

1. Какие свойства данных определяют принципиальную возможность их сжатия с помощью LZ-методов?

2. В чем основная разница между алгоритмами семейства LZ77 и семейст­ва LZ78?

3. Какие особенности строения словаря LZ77 позволяют создавать для од­ного и того же входного файла несколько различных архивных, которые затем можно разжать без потерь информации с помощью одного и того же декодера LZ77? Возможно ли это в случае алгоритма LZ78?

4. Почему в алгоритмах семейства LZ77 короткие строки часто выгоднее сжимать не с помощью словарной замены, а через кодирование как по­следовательности литералов? Каким образом это связано с величиной смещения фразы, совпадающей со строкой?

5. Приведите пример блока данных, которые в общем случае выгоднее сжимать алгоритмом семейства LZ77, нежели семейства LZ78, а также выбор между алгоритмами семейства LZ77 или семейства LZ78, если задаваться только целью максимизации степени сжатия?

6. Почему дистрибутивы программного обеспечения целесообразно архи­вировать с помощью алгоритмов семейства LZ77?

7. В каких случаях имеет смысл использовать методы кодирования целых чисел - коды Элиаса, Голомба и 'т. п. - для сжатия потоков смещений и длин совпадения?

8. Применим ли алгоритм "почти оптимального" разбора для методов LZ77, рассмотренный в подразд. "Пути улучшения сжатия для методов LZ", для обработки потоков? Можно ли однозначно сказать, что любая стратегия получения оптимального разбора требует поблочной обработ­ки данных?

9. Почему применение контекстно-зависимых словарей улучшает степень сжатия для алгоритмов семейства LZ78 значительно больше, чем для ал­горитмов семейства LZ77?