http://de.wikipedia.org/wiki/Entropiekodierung
wenn ich das richtig versteh, dann wird praktisch "Blockweise" Kodiert und ...
vorwärts dynamisch: ... praktisch die Verteilung über breits kodierte Zeichen/Blöcke bestimmt
(sozusagen in den vorherigen Blöcken, bzw. dem vorherigen Block, wärend des Kodierens mitgezählt und das Zählergebnis im nächsten Block zum Kodieren verwendet)
rückwärts dynamisch: ... erstmal der Block angesehn und vor der Kodierung dieser Block analysiert
statisch: ... vorher alle Daten analysiert und dann kodiert.
rückwärts dynamisch wäre dann sozusagen alles in blöcke aufgeteilt und dann jeder Block einzeln sozusagen statisch kodiert
@Meflin:
HELLOWORLDBYHIMITSU > HELLO + WORLD + BYHIM + ITSU
rückwärts dynamisch:
- HELLO analysieren
- und anhand der Analyse kodieren
- WORLD analysieren
- und anhand der Analyse kodieren
- BYHIM analysieren
- und anhand der Analyse kodieren
- ITSU analysieren
- und anhand der Analyse kodieren
vorwärts dynamisch:
- irgendwelche Standardwerte als Analyse laden (oder den ersten Block gegen die Definition analysieren)
- HELLO und anhand der Analyse kodieren
und währenddessen/parallel die Zeichen von HELLO mitzählen/analysieren
- WORLD und anhand der letzen Analyse kodieren
und währenddessen/parallel die Zeichen von WORLD mitzählen/analysieren
- BYHIM und anhand der letzen Analyse kodieren
und währenddessen/parallel die Zeichen von BYHIM mitzählen/analysieren
- ITSU und anhand der letzen Analyse kodieren
[und währenddessen/parallel die Zeichen von ITSU mitzählen/analysieren]
ich würde die Vor-/Nachteile dann so definieren:
statisch:
+ ein Wörterbuch (welches Zeichen wie kodiert wurde)
- wenn sich die verteilung über die gesamten Daten "öfters" mal ändert, ist es insgesamt zwar optimal kodiert, aber nicht in Bezug auf einzelne Blöcke
vorwärts dynamisch:
+ sind mehrere Blöcke nacheinander mit gleicher Verteilung, dann wären die nachfolgenden Blöcke gut kodiert
- der erste Block (nach Verteilungsveränderung) wäre nicht optimal kodiert
+ man benötigt aber nur ein oder garkein (wenn man zum Anfang ein Standardwörterbuch läd) Wörterbuch
(beim Standardwörterbuch könnte man ja anhand des Dateitypes schonmal ein "möglichst" Optimales auswählen)
rückwärts dynamisch:
+ jeder Block wird optimal kodiert
- aber für jeden Block wäre ein Wörterbuch notwendig