деякі символи зі стандартного 256-символьного набору в довільному тексті можуть зустрічатися частіше середнього періоду повтору, а інші, відповідно, - рідше. Отже, якщо $ + o записи поширених символів використовувати короткі послідовності біт, довжиною менше 8, а для запису рідкісних символів - довгі, то сумарний обсяг файлу зменшиться.
Алгоритм Лемпеля-Зеева. Класичний алгоритм Лемпеля-Зеева-LZ77, названий так за роком свого опублікування, гранично простий. Він формулюється так: якщо в минулому раніше вихідному потоці вже зустрічалася подібна послідовність байт, причому запис про її довжині і зміщенні від поточної позиції коротше ніж сама ця послідовність, то у вихідний файл записується посилання (зміщення, довжина), а не сама послідовність.
. Показник ступеня стиснення файлів
Стиснення інформації в архівних файлах проводиться за рахунок усунення надмірності різними способами, наприклад за рахунок спрощення кодів, виключення з них постійних бітів або подання повторюваних символів або повторюваної послідовності символів у вигляді коефіцієнта повторення і відповідних символів. Алгоритми подібного стиснення інформації реалізовані у спеціальних програмах-архиваторах (найбільш відомі з яких arj / arjfolder, pkzip / pkunzip / winzip, rar / winrar) застосовуються певні стискаєте можуть як один, так і декілька файлів, які в стислому вигляді поміщаються в так званий архівний файл або архів.
Метою упаковки файлів зазвичай є забезпечення більш компактного розміщення інформації на диску, скорочення часу і відповідно вартості передачі інформації по каналах зв'язку в комп'ютерних мережах. Тому основним показником ефективності тієї чи іншої програми-архіватора є ступінь стиснення файлів.
Ступінь стиснення файлів характеризується коефіцієнтом Кс, який визначається як відношення обсягу стисненого файлу Vc до обсягу вихідного файлу Vо, виражене у відсотках (в деяких джерелах використовується зворотне співвідношення):
Кс=(Vc / Vo) * 100%
Ступінь стиснення залежить від використовуваної програми, методу стиснення і типу вихідного файлу.
Найбільш добре стискаються файли графічних образів, текстові файли і файли даних, для яких коефіцієнт стиснення може досягати 5 - 40%, менше стискаються файли виконуваних програм і завантажувальних модулів Кс=60 - 90%. Майже не стискаються архівні файли. Це неважко пояснити, якщо знати, що більшість програм-архіваторів використовують для стиснення варіанти алгоритму LZ77 (Лемпеля-Зеева), суть якого полягає в особливому кодуванні повторюваних послідовностей байт (читай - символів). Частота народження таких повторів найбільш висока в текстах і точкової графіку і практично зведена до нуля в архівах.
Крім того, програми для архівації все-таки різняться реалізаціями алгоритмів стиснення, що відповідно впливає на ступінь стиснення.
В деякі програми-архіватори додатково включаються кошти, спрямовані на зменшення коефіцієнта стиснення Кс. Так в програмі WinRAR реалізований механізм безперервного (solid) архівування, при використанні якого може бути досягнута на 10 - 50% більш висока ступінь стиснення, ніж дають звичайні методи, особливо якщо упаковується значна кількість невеликих файлів однотипного змісту.