DU BINAIRE COMPRESSé


Difficile
        

Du binaire compressé

Cette énigme a été créée par jaudi
Cette énigme a été postée le 02/01/2026









Ce forum est un forum d'aide et de discussion, il est cependant interdit de donner la solution de l'énigme !

2026-02-24 22:18:34

jaudi

Concernant le codage de Huffman, le dictionnaire respectant le nombre de bits (impliqués par l'arbre de codage) n'est en effet pas unique. Par exemple, dans notre cas (avec les conditions B (1 bit), C (2 bits), A (3 bits) et D (3 bits) sur la taille des codages), il y a 8=2*2*2 possibilités de dictionnaire différents, en respectant le fait qu’aucun des codes n’aient leur début correspondant au code d’une lettre plus courte, qui est une propriété inhérente au codage de Huffman. Néanmoins, pour le codage de Huffman canonique (ici utilisé), le code est unique car les règles définies, à savoir que : "les nœuds sont classés par longueur (correspondant aux nombres de branches les séparant du tronc) puis par ordre alphabétique, puis que le premier symbole dans le classement reçoit un code de longueur n (avec n le nombre de branches le séparant du tronc) et avec que des 0, puis le suivant aura (n-1) fois 0 puis un 1 (puis éventuellement autre chose s’il est plus long que le premier) et ainsi de suite" garantissent l'unicité d'un tel codage.

2026-02-24 22:04:54

jaudi

Bonsoir Jericho, bravo pour le décryptage et la médaille ! Tu as raison, il y avait une petite erreur dans l'explication : en effet "on fusionne C et noeud_1 pour former noeud_2". Par conséquent : "Les lettres dans l’ordre sont donc B (1 bit), C (2 bits), A (3 bits) et D (3 bits).", et "BAC sera chiffré 011010 (6 bits)" J'ai donc corrigé l'énigme en conséquence.

2026-02-22 10:24:00

Jericho

Je pense qu'il y a une petite erreur dans les explications de la méthode de Huffman : "On fusionne C (pas D) et noeud_1 pour former noeud_2 (49 %)... Les lettres dans l’ordre sont donc B (1 bit), C (pas D) (2 bits), A (3 bits) et D (pas C) (3 bits)." Comme un dictionnaire de Huffman n'est pas unique, l'exemple "BAC sera chiffré 0110111 (7 bits)" peut être codé "010110" (6 bits) ce qui correspond davantage à la table de fréquence donnée.