Задание № 848

Студент

Ключникова Анна

Задача

Компрессия данных

Состояние

Открыто

Дедлайн
26 декабря 2016
Назначено

12.12.2016, 08:53

Обновлено

29.12.2016, 01:37

Реализовать программу компрессии/декомпресси данных по алгоритму Хаффмана и/или Лемпеля-Зива-Венча.

Входные данные рассматривать как последовательность байт, т.е. считать, что для их записи используется алфавит из 256 символов.

Пример работы с программой:

compress -c input_file compressed_file - упаковка файла

compress -u compressed_file output_file - распаковка файла

В ходе работы для алгоритма Хаффмана программа должна сообщать:

  • количество байт занятых в файле под хранение дерева Хаффмана
  • количество байт занятых сжатыми данными
  • степень компрессии = (байт сжатых данных + байт под хранение дерева Хафмана) / байт исходных данных

для алгоритма LZW:

  • степень компрессии = байт сжатых данных / байт исходных данных

Действия