Huffman Code
Das Verfahren von Huffman ist die systematische Konstruktion eines Codes der die Fano-Bedingung erfüllt und der den Text mit möglichst wenigen Bits codiert.
Anwendung findet die Huffman-Codierung nicht nur bei der Kompression von Texten sondern auch bei Datenübertragungsverfahren, in Bilddaten-Kompressionsverfahren JPEG uva.
Konstruktion des Huffman-Codes
Das Verfahren konstruiert einen binären Baum anhand der Häufigkeit der Daten und weist den am häufigsten vorkommenen Daten möglichst kurze ohne Trennzeichen unterscheidbare Bitmuster zu.
Zum Übersetzen von Huffman-kodierten Texten muss im Allgemeinen die Code-Tabelle mit übertragen werden. Die Kompressionsrate ist stark von der Wahrscheinlichkeitsverteilung der Zeichen abhängig.
Fano-Bedingung: Kein Codewort darf Anfang eines anderen Codewortes sein.
Bei mehren identischen Häufigkeiten gibt es unterschiedliche Huffman-Trees - diese Konstruktion wählt die Verzweigungen der Knoten nach dem internen Sort-Command aus.
---
a laabla mid marmalad
a marmaladn amerla
erdbeeren ernten & essen
gerade genug gegessen
mississippi issue
neues geheimnis um gemini eins
---
Der Huffman-Tree wird über Listen/(Matrizen) konstruiert und es wird per Script (SetValue) in die Listen geschrieben - wie stabil das Verfahren funktioniert muss sich erst noch zeigen.