> elias | delta | ottimale <
// Elias Delta – codice universale più efficiente di Gamma per interi più grandi
Meglio di Gamma
Più efficiente di Elias Gamma per interi > 3.
Codice universale
Funziona con qualsiasi intero positivo senza parametri aggiuntivi.
Buone proprietà asintotiche
Usa log₂(n) + 2log₂(log₂(n)) + 1 bit.
>> informazioni tecniche
Come funziona Elias Delta:
Elias Delta codifica un intero positivo n in tre parti: 1) si calcola L = ⌊log₂(n)⌋ + 1 (lunghezza in bit), 2) si codifica L usando Elias Gamma, 3) si aggiungono gli ultimi L−1 bit di n. Questa crescita doppiamente logaritmica lo rende più efficiente di Gamma per numeri più grandi, mantenendo la natura universale del codice.
Esempi di codifica Delta:
n=1: L=1, Gamma(1)='1', bit='', Delta='1' n=2: L=2, Gamma(2)='010', bit='0', Delta='0100' n=3: L=2, Gamma(2)='010', bit='1', Delta='0101' n=4: L=3, Gamma(3)='011', bit='00', Delta='01100' n=16: L=5, Gamma(5)='00101', bit='0000', Delta='001010000' Confronto delle lunghezze: n | Gamma | Delta | Risparmio 1 | 1 | 1 | 0 16 | 9 | 9 | 0 100 | 13 | 12 | 1 1000 | 19 | 16 | 3
Perché usare Elias Delta:
- ▸Meglio di Gamma per n > 3
- ▸Nessun parametro da configurare
- ▸Codice prefisso privo di ambiguità
- ▸Ottimo per interi di dimensioni medie
- ▸Ponte verso Elias Omega
>> domande frequenti
Che cos'è la codifica Elias Delta?
Elias Delta è un miglioramento di Elias Gamma: codifica innanzitutto la lunghezza della rappresentazione binaria con Gamma e poi aggiunge i bit rimanenti. Usa circa log₂(n) + 2log₂(log₂(n)) + 1 bit, risultando più efficiente per interi più grandi.
Delta vs Gamma?
Gamma utilizza 2⌊log₂(n)⌋ + 1 bit, mentre Delta utilizza log₂(n) + 2log₂(log₂(n)) + 1 bit. Delta è migliore per n > 3 e il risparmio cresce con numeri più grandi. Per valori molto piccoli (1–3) i due codici sono comparabili.
Quando usare Delta invece di Gamma?
Usa Delta quando i tuoi dati contengono principalmente interi > 3. Per interi molto piccoli (1–2), Gamma può essere leggermente migliore. Per interi molto grandi considera Elias Omega, che migliora ulteriormente Delta.
Delta è il miglior codice di Elias?
Delta è una via di mezzo. Gamma è il più semplice ma il meno efficiente. Delta migliora la compressione. Omega è il migliore per interi molto grandi ma anche il più complesso. Scegli in base alla distribuzione dei dati e ai vincoli di implementazione.