A
dictionary coder, also sometimes known as a
substitution coder, is a class of
lossless data compression algorithms which operate by searching for matches between the text to be compressed and a set of
strings contained in a
data structure (called the 'dictionary') maintained by the encoder. When the encoder finds such a match, it substitutes a reference to the string's position in the data structure.