> elias | delta | optimal <

// Elias Delta – universell kode som er mer effektiv enn Gamma for større heltall

0 tegn
0 tegn

>> funksjoner

[EFFEKTIV]

Bedre enn Gamma

Mer effektiv enn Elias Gamma for n > 3.

[UNIVERSELL]

Universell kode

Fungerer for alle positive heltall uten ekstra parametere.

[ASYMPTOTISK]

God asymptotikk

Bruker log₂(n) + 2log₂(log₂(n)) + 1 biter.

>> teknisk informasjon

Hvordan Elias Delta fungerer

Elias Delta koder et positivt heltall n i tre deler: 1) finn L = ⌊log₂(n)⌋ + 1 (bitlengde), 2) kod L med Elias Gamma, 3) legg til de siste L−1 bitene av n. Denne dobbeltlogaritmiske veksten gjør Delta mer effektiv enn Gamma for større tall, samtidig som koden forblir universell.

Eksempler på Delta-koding

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'

Sammenlign lengder:
n     | Gamma | Delta | Innsparing
1     | 1     | 1     | 0
16    | 9     | 9     | 0
100   | 13    | 12    | 1
1000  | 19    | 16    | 3

Hvorfor bruke Elias Delta

  • Bedre enn Gamma for n > 3
  • Ingen parametere å konfigurere
  • Entydig prefikskode
  • God for heltall i mellomstørrelse
  • Bro videre til Elias Omega

>> ofte stilte spørsmål

Hva er Elias Delta-koding?

Elias Delta er en forbedring av Elias Gamma der lengden på det binære tallet kodes med Gamma, og de resterende bitene legges til. Den bruker omtrent log₂(n) + 2log₂(log₂(n)) + 1 biter og er derfor mer effektiv for store heltall.

Delta vs Gamma-koding?

Gamma bruker 2⌊log₂(n)⌋ + 1 biter, mens Delta bruker log₂(n) + 2log₂(log₂(n)) + 1 biter. Delta er bedre for n > 3, og innsparingene øker for større tall. For svært små verdier (1–3) er de omtrent like gode.

Når bør jeg bruke Delta i stedet for Gamma?

Bruk Delta når datasettet ditt hovedsakelig består av heltall > 3. For svært små heltall (1–2) kan Gamma være litt bedre. For svært store tall kan Elias Omega være et bedre alternativ, siden den forbedrer Delta ytterligere.

Er Delta den beste Elias-koden?

Delta er et kompromiss. Gamma er enklest, men minst effektiv. Delta forbedrer komprimeringen. Omega er best for svært store tall, men også mest kompleks. Velg basert på datadistribusjon og krav til implementasjon.