Direkt zum Inhalt

Lexikon der Mathematik: Huffman-Code

Codierung, bei der häufiger auftretende Nachrichten durch kürzere Codewörter codiert werden.

Der Huffman-Code wird oft zur Datenkompression (Fax-Übertragung, JPEG-Bilddaten) verwendet. Da die codierten Teilnachrichten eine variable Länge haben, darf kein Anfangsstück (Präfix) einer codierten Nachricht selbst eine codierte Nachricht sein, um die eindeutige Decodierbarkeit zu gewährleisten.

Die eigentliche Codierung erhält man aus einem gerichteten bewerteten Graphen, dem sogenannten Huffman-Baum. Dazu bildet man zuerst einen „Huffman-Wald“, dies ist ein Graph, der nur aus Knoten, nämlich allen Zeichen des Nachrichtenalphabets, besteht, Jeder Knoten k wird mit der relativen Häufigkeit h(k) des Zeichens k bewertet.

Danach faßt man diesen Wald rekursiv wie folgt zusammen (binäre Huffman-Codierung): Man sucht zwei Wurzel-Knoten k1 und k2 mit minimaler Bewertung h(k1) ≤ h(k2) ≤ h(k), kki, und erzeugt einen neuen Knoten k′. zwei Kanten \(k^{\prime} \mathop{\to }\limits^{\text{0}}{k}_{1}\), \(k^{\prime} \mathop{\to }\limits^{\text{1}}{k}_{2}\). und bewertet den neuen Knoten mit h(k′) = h(k1) + h(k2). Das setzt man so lange fort, bis man nur noch einen einzigen Wurzel-Knoten k0 hat, und der Wald ein Baum ist, dessen Blätter die Zeichen des Nachrichtenalphabets sind.

Die (binäre) Huffman-Codierung eines Zeichens k ergibt sich aus der Bewertung des eindeutigen Weges von der Wurzel k0 zum Blatt k. Jede Huffman-Codierung C ist eine Codierung mit minimaler mittlerer Wortlänge (ΣcCh(c)l(c)) und in diesem Sinne optimal.

Erhält man beispielsweise aus einer Quelle nur die Zeichen E, N, I, R, S, T und A mit den entsprechenden Wahrscheinlichkeiten (17/55, 10/55, 8/55, 7/55, 7/55, 4/55, 2/55), dann ist eine binäre Huffman-Codierung: E→11, N→00, I→101, R→100, S→011, T→0101 und A→ 0100.

  • Die Autoren
- Prof. Dr. Guido Walz

Schreiben Sie uns!

Wenn Sie inhaltliche Anmerkungen zu diesem Artikel haben, können Sie die Redaktion per E-Mail informieren. Wir lesen Ihre Zuschrift, bitten jedoch um Verständnis, dass wir nicht jede beantworten können.

Partnerinhalte

Bitte erlauben Sie Javascript, um die volle Funktionalität von Spektrum.de zu erhalten.