Bonjour
j ai trouver le code de huffman de 3 lettres de l aphabet
exemple : a = 11101 j = 100 v = 101
comment coder le mot java
Version imprimable
Bonjour
j ai trouver le code de huffman de 3 lettres de l aphabet
exemple : a = 11101 j = 100 v = 101
comment coder le mot java
euh... ya un piege ??? tu remplace le "j" par 100, le a par 11101, et ainsi de suite.. ca devriat donner :
10011101101100
au passage, c'es curieux que ton code pour "a" soit plus long que celui de j !! tu es sur de ton codage ?
Ton codage dépend t-il du texte à coder ? Ou tu as fait directement avec les pourcentages d'utilisations des lettres dans la langue française ? (danc ce cas, comme dit jobherzt, doit y avoir un problème).Citation:
Envoyé par jobherzt
non en fait j ai juste donner un exemple comme sa
cependant je me disais aussi qu il sufit de coller les codes corespondant a chaque lettre
mais quand je fait sa mon code est plut lourd que mon texte (en byte)
alors c'est que tu as mal fait ton code... le principe de huffman est d'associer un code court aux lettre qui reviennent souvent et un code long aux lettres plus rares, en faisant en sorte qu'aucun code ne soit le prefixe d'un autre. tu peux faire ce codage une fois pour toute (en utilisant les frequences de l'alphabet), ou dynamiquement avec le texte. exemple avec "java", le a revient 2 fois, donc on lui donne le code le plus court : 0
le j et le v reviennent chacun une fois, on leur donne le code 10 et 11 respectivement. note qu'on es obligé de leur donner un code de longueur 2, sinon un code risque d'etre le prefixe d'un autre.
donc java nous donne : 100110, cad 6 bits, soit moins qu'un seul caractere en stockage "normal" !! et donc un taux de compression de plus de 80%.
merci pour ta reponse elaboree
Peut tu me dire combien de byte sont necessaire pour representer les lettres de l aphabet
exemple : a,b ! ? °
Un lien qui peut t'intéresser sur le site de DVP :
http://tcharles.developpez.com/Huffman/
Edit : Des sources C du codage de Huffman
http://sourceforge.net/projects/huffman,
j'ai jeter un rapide coup d'oeil, je pense que le programme créait l'arbre du codage de Huffman en fonction du fichier (pour avoir une bonne performance à chaque coup).
merci de votre soutien