> elias | delta | optimal <

// Elias Delta – code universel plus efficace que Gamma pour les grands entiers

0 caractères
0 caractères

>> fonctionnalités

[EFFICACE]

Mieux que Gamma

Plus efficace qu'Elias Gamma pour les entiers > 3.

[UNIVERSEL]

Code universel

Fonctionne pour tout entier positif sans paramètre supplémentaire.

[ASYMPTOTIQUE]

Bon comportement asymptotique

Utilise log₂(n) + 2log₂(log₂(n)) + 1 bits.

>> informations techniques

Comment fonctionne Elias Delta

Elias Delta code un entier positif n en trois parties : 1) on calcule L = ⌊log₂(n)⌋ + 1 (longueur en bits), 2) on code L avec Elias Gamma, 3) on ajoute les L−1 bits restants de n. Cette croissance doublement logarithmique le rend plus efficace que Gamma pour les grands nombres tout en restant universel.

Exemples de codage Delta

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'

Comparer les longueurs :
n     | Gamma | Delta | Gain
1     | 1     | 1     | 0
16    | 9     | 9     | 0
100   | 13    | 12    | 1
1000  | 19    | 16    | 3

Pourquoi utiliser Elias Delta

  • Meilleur que Gamma pour n > 3
  • Aucun paramètre à régler
  • Code préfixe sans ambiguïté
  • Idéal pour des entiers de taille moyenne
  • Transition naturelle vers Elias Omega

>> questions fréquentes

Qu'est-ce que le codage Elias Delta ?

Elias Delta est une amélioration d'Elias Gamma : il code d'abord la longueur de la représentation binaire avec Gamma, puis ajoute les bits restants. Il utilise environ log₂(n) + 2log₂(log₂(n)) + 1 bits, ce qui le rend plus efficace pour les grands entiers.

Delta vs Gamma ?

Gamma utilise 2⌊log₂(n)⌋ + 1 bits, tandis que Delta utilise log₂(n) + 2log₂(log₂(n)) + 1 bits. Delta est préférable pour n > 3, avec des gains croissants pour les grands nombres. Pour les très petites valeurs (1–3), les deux sont comparables.

Quand utiliser Delta plutôt que Gamma ?

Utilisez Delta lorsque vos données contiennent principalement des entiers > 3. Pour des entiers très petits (1–2), Gamma peut être légèrement meilleur. Pour des entiers très grands, envisagez Elias Omega, qui améliore encore Delta.

Delta est-il le meilleur code d'Elias ?

Delta est un compromis. Gamma est le plus simple mais le moins efficace. Delta améliore la compression. Omega est le meilleur pour de très grands nombres, mais aussi le plus complexe. Choisissez en fonction de la distribution de vos données et des contraintes d'implémentation.