Der Huffmann-Algorithmus |
Dieses Verfahren beruht darauf, häufig vorkommende
Zeichen in einem kürzeren und selten vorkommende Symbole in einem
längeren Code zu verschlüsseln.
Schritt | Beispiel: KERNENERGIE | ||||||
Die Häufigkeit jedes vorkommenden Zeichen wird ermittelt. |
|
||||||
Dem häufigsten Zeichen wird der kürzest
mögliche Code, dem seltensten der optimal längste Code zugeordnet.
Zeichen, die nicht vorkommen werden nicht verändert. |
|
||||||
Ein binärer Baum wird erzeugt, aus dem sich der
Huffmann-Code jedes einzelnen Zeichens ableiten läßt, wird erzeugt.
Wenn man den Baum von der Wurzel zu jedem einzelnen Zeichen verfolgt und dabei an einer Verzweigung nach links eine 0 und an einer Verzweigung nach rechts eine 1 zuordnet, ergibt sich ein optimaler und eindeutiger Code für jedes einzelne Zeichen. |
|||||||
In der Ursprungsdatei wird jedes Zeichen durch seinen neuen Code ersetzt. | K E R N E N E R G I E =
1110 0 10 110 0 110 0 10 11110 11111 0 |
||||||
Die Information, welcher Code welchem Zeichen entspricht
wird an die Datei angehängt.
Meist werden dort noch weitere diverse statistische und technische Parameter gespeichert. Dadurch vergrößert sich die Datei wieder geringfügig. |
Vergleich:
KERNENERGIE (ASCII-verschlüsselt): 11 BYTE = 88
Bit
Einsparung bei diesem Wort: 60 Bit = 68 % |
Es läßt sich mit mathematischen Mitteln beweisen,
dass keine einfach durchgeführte Kodierungsstrategie zu einem besseren
Ergebnis führen kann.
H@Heerdegen.we.uunet.de |
|
|
|
|
|
|