kodieren | dekodieren | komprimieren

> elias | delta | optimal <

// Elias Delta – universeller Code, effizienter als Gamma für größere Ganzzahlen

0 Zeichen
0 Zeichen

>> Funktionen

[EFFIZIENT]

Besser als Gamma

Effizienter als Elias Gamma für Ganzzahlen > 3.

[UNIVERSELL]

Universeller Code

Funktioniert für jede positive Ganzzahl ohne Zusatzparameter.

[ASYMPTOTIK]

Gute Asymptotik

Verwendet log₂(n) + 2log₂(log₂(n)) + 1 Bits.

>> Technische Infos

Wie Elias Delta funktioniert

Elias Delta codiert eine positive Ganzzahl n in drei Teilen: 1) Finde L = ⌊log₂(n)⌋ + 1 (Bitlänge), 2) code L mit Elias Gamma, 3) hänge die letzten L−1 Bits von n an. Dieses doppelt‑logarithmische Wachstum macht Delta für größere Zahlen effizienter als Gamma, bleibt dabei aber universell.

Beispiele für Delta-Codierung

n=1: L=1, Gamma(1)='1', Bits='', Delta='1'
n=2: L=2, Gamma(2)='010', Bits='0', Delta='0100'
n=3: L=2, Gamma(2)='010', Bits='1', Delta='0101'
n=4: L=3, Gamma(3)='011', Bits='00', Delta='01100'
n=16: L=5, Gamma(5)='00101', Bits='0000', Delta='001010000'

Längen vergleichen:
n     | Gamma | Delta | Ersparnis
1     | 1     | 1     | 0
16    | 9     | 9     | 0
100   | 13    | 12    | 1
1000  | 19    | 16    | 3

Warum Elias Delta verwenden?

  • Besser als Gamma für n > 3
  • Keine Parameter nötig
  • Präfixfreier Code
  • Gut für mittlere Ganzzahlen
  • Brücke zu Elias Omega

>> Häufig gestellte Fragen

Was ist Elias-Delta-Codierung?

Elias Delta ist eine Erweiterung von Elias Gamma: Zuerst wird die Bitlänge einer Zahl mit Gamma codiert, anschließend werden die restlichen Bits angehängt. Es benötigt ungefähr log₂(n) + 2log₂(log₂(n)) + 1 Bits und ist damit für größere Ganzzahlen effizienter.

Delta- vs. Gamma-Codierung?

Gamma verwendet 2⌊log₂(n)⌋ + 1 Bits, während Delta log₂(n) + 2log₂(log₂(n)) + 1 Bits nutzt. Delta ist für n > 3 besser und bringt mit zunehmender Zahl mehr Ersparnis. Für sehr kleine Werte (1–3) sind beide ähnlich.

Wann Delta statt Gamma verwenden?

Nutze Delta, wenn deine Daten überwiegend Ganzzahlen > 3 enthalten. Für sehr kleine Werte (1–2) kann Gamma leicht im Vorteil sein. Für sehr große Zahlen eignet sich Elias Omega, das Delta weiter verbessert.

Ist Delta der beste Elias-Code?

Delta ist der Mittelweg. Gamma ist am einfachsten, aber am wenigsten effizient. Delta verbessert die Kompression. Omega ist für sehr große Zahlen am besten, aber auch am komplexesten. Wähle je nach Verteilung der Daten und Implementierungsaufwand.