Data Compression


Criteria

Survey Formats

Basics

Compression Methods

Shannon-Fano

Huffman

Lempel-Ziv (LZ)

Arithmetic Coding

Run Length Encoding

Burrows-Wheeler (BWT)

Implementations

Deflate

Basic Algorithm

Data Structure

Huffman Code Trees

Data and Lengths

Distance

Static and Dynamic

Deflate64™

Data Formats


Glossary

Index


Download


www.BinaryEssence.com

Deflate: Basic Algorithm


In principle Deflate only provides three option to encode original data:


Coding options of Deflate:


Coding options of Deflate


Uncompressed original data:

The data of the entire block are taken over unchanged only with minimum requirements for header information.


Huffman encoded original data:

The original byte symbols (0 - 255) are directly encoded according to the Huffman tree providing data codes.


Reference to a previous sequence (LZ77):

A sequence being already part of the previous contents is addressed by the parameter pair "sequence length" and "distance". Both parameters are encoded with the help of Huffman trees providing length and distance codes.


 <   ^   > 

Deflate Deflate Deflate: Data Structure