Forward Looking Huffman Coding

Shmuel T. Klein, Shoham Saadia, Dana Shapira

Research output: Contribution to journalArticlepeer-review

12 Scopus citations

Abstract

Huffman coding is known to be optimal, yet its dynamic version may yield smaller compressed files. The best known bound is that the number of bits used by dynamic Huffman coding in order to encode a message of n characters is at most larger by n bits than the size of the file required by static Huffman coding. In particular, dynamic Huffman coding can also generate a larger encoded file than the static variant, though in practice the file might sometimes be smaller. We propose here a new variant of Huffman encoding, that provably always performs better than static Huffman coding by at least m − 1 bits, where m denotes the size of the alphabet, and may be better than the standard dynamic Huffman coding for certain files. The algorithm is based on reversing the direction for the references of the encoded elements, from pointing backwards into the past to looking forward into the future.

Original languageEnglish
Pages (from-to)593-612
Number of pages20
JournalTheory of Computing Systems
Volume65
Issue number3
DOIs
StatePublished - 25 Jun 2020

Keywords

  • Dynamic Huffman coding
  • Huffman coding
  • Lossless data compression

Fingerprint

Dive into the research topics of 'Forward Looking Huffman Coding'. Together they form a unique fingerprint.

Cite this