Загрузка...

Сжатие массивов с повторяющмися разрядами не только в начале строки.


а) В строке только один повторяющийся участок. Помимо ? добавляется ещё один символ k обозначающий конец строки. Расшифровка ведётся от k до k. Оставшиеся между k k цыфры вместе с пропущеными разрядами должны составлять полную строку.
б) В строках по несколько повторяющихся участков. Вместо ? используются специальные символы указывающие на количество пропусков, символы k не используются.

Сжатие путём устранения повторяющихся символов.
Любое число повторяющихся символов можно свести к 2-м упакованым 10-м символам которые служат для обозначения повторяемости и обозначения числа повторений.

Метод зонного сжатия.
8 двоичных разрядов позволяют зашифровать двоичным кодом алфавит из 256 символов. Если использовать пол байта, то можно зашифровать 16 символов некоторого абстрактного алфавита, затем можно кодировать информацию в этом 16-ти буквеном алфавите по 2 символа в каждом новом слове и передовать т.о. те же 256 символов. Построим алфавит из 16 символов в котором первые 13 являются основные и называются цифрами, 3 вспомогательные и называются зоны.
Кодовые слова во 2-м алфавите строятся т.о., что 1-е 4 разряда всегда представляют зону, а вторые 4 – цифру. Метод зонного сжатия состоит в том, что буквы вторичного алфавита разбиваются по зонам, и если в тексте рядом встречаются буквы из одной зоны, то номер её указывают только перед 1-й буквой, т.о. на буквы из одной зоны стоящие рядом расходуются ? байта. При составлении исходного алфавита необходимо учитывать частоту появления букв в словах и вероятность различных буквеных сочетаний. При разбиении на зоны букв русского алфавита коэфециент сжатия ? 1,2. (буквы располагают последовательно).

Загрузка...