bonjour
comment fait t on le decodage de huffman
par exemple java coder par 100110
Comment fait t'on pour connaitre le nombre de bit utilisé par chaque lettre?
le reste est facile si on connait sa
bonjour
comment fait t on le decodage de huffman
par exemple java coder par 100110
Comment fait t'on pour connaitre le nombre de bit utilisé par chaque lettre?
le reste est facile si on connait sa
Le choix du code est tel qu'il n'y a pas d'ambiguité.Envoyé par harris_macken
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.
j ai pas compris ta reponse peut tu etre plus explicite s il te plait
merci
Ca veut dire qu'il n'y a pas plusieurs comprehensions du texte possible.
par exemple :
si A = 10
B = 00
C = 100
D = 01111
E = ...
Si le code commence par :
1000....
Tu ne sais pas si c'est:
10-00 ou 100-0qqch d'autres dans le code.
Ensuite, ça dépend si tu prends un codage de huffman fixe (par exemple basé sur les fréquences d'apparitions des lettre ds la langues françaises), ou bien un codage qui change à chaque fois. Dans ce cas, il te faudra reconstruire l'arbre de codage pour chaque fichier. Mais cherche sur google, il y aura des schéma plus explicite que des mots.
Edit : matte le lien donné par progfou
Je ne répondrai à aucune question technique en privé
Ca fait suite à ce post je suppose :
http://www.developpez.net/forums/sho...d.php?t=220523
Merci de le mettre à la suite la prochaine fois...
Pour ta question, quand tu as constitué le code, en choisissant la lettre et le code binaire correspondant, il te faut envoyer le doctionnaire ainsi constitué, avec le texte codé, afin que le décodeur sache reprendre le code binaire et l'associer à la bonne lettre.
Le lien qui a été donné sur l'autre message que tu as posté me semble particulièrement explicite et suffisant.
http://tcharles.developpez.com/Huffman/
Aucune réponse à une question technique par MP.
Ce qui vous pose problème peut poser problème à un(e) autre
http://thebrutace.labrute.fr
Justement progfu ma difficulter est que je me demande comment realiser l'algorithme:
exemple
Java : 100110
Dictionnaire
A=0
J=10
V=11
faut il essayer toute les combinaison possible de mes lettres du dictionnaires et trouver la combinaison qui correspond a java ??
dans ce cas j imagine que pour un texte avec 256 lettre sa serait exponentielle
Tu as juste à lire ton flux binaire au fur et à mesure, bit à bit, et comparer avec le dico.
Dans ton cas :
1 => pas connu
10 => J - réinitialisation
0 => A - réinitialisation
1 => pas connu
11 => V - réinitialisation
0 => A
Et voilà.
Avec ça, plus le lien, si tu le lis, ça doit largement suffire.
Aucune réponse à une question technique par MP.
Ce qui vous pose problème peut poser problème à un(e) autre
http://thebrutace.labrute.fr
Merci beuacoup
mon code marche bien
J ai une autre question :
Qu est ce qui explique que mon code à un taux de compression inférieur à celui des logiciels tels que win zip et autre??
Ils n'utilisent pas Huffman mais d'autres algorithmes, ou une combinaison d'algorithmes (Huffman peut être utilisé par exemple sur le résultat d'un LZ).Envoyé par harris_macken
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.
J'ajouterai juste que, même si je ne connais pas les derniers algorithmes utilisés, mais en gros, on va trouver LZW pour les plus anciens, du Huffman modifié ou encore du codage arithmétique.
Aucune réponse à une question technique par MP.
Ce qui vous pose problème peut poser problème à un(e) autre
http://thebrutace.labrute.fr
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager