Aller au contenu

besoin de vos lumière


alpha4456

Messages recommandés

bonjour j aurais besoin d indication

voilas je fais un dossier de math sur l algorithme d huffman mais j ai un gros point noir

Deux choix s’offrent alors :soit un tableau générique intégré dans la fonction de décompression soit un tableau fait à la main implémenté dans le fichier créé

je ne comprend pas trop cette phrase

Lien vers le commentaire
Partager sur d’autres sites

Apparemment, tu vas associé à ton algorithme de Huffman un tableau de "poids" (en général la fréquence d'occurrence d'une lettre dans une langue).

Et donc, ce tableau est soit en local dans la procédure/ fonction de décompression (et donc recréé à chaque fois) soit en global dans un fichier d'entête (Util.h ou Constantes.h :francais:, et donc présent tout le temps d'exécution)

A moins que je me gourre :dd:

Lien vers le commentaire
Partager sur d’autres sites

En gros, une compression entropique de Huffman consiste à construire un arbre non équilibré ou chaque feuille correspond à un symbole. Le principe étant que les symboles les plus fréquents soient le plus haut possible dans l'arbre et que donc la séquence de bits représentants leur position dans cet arbre soit la plus courte possible.

Donc dans ton problème tu as deux choix :

- soit intégrer cet arbre au fichier donc à la décompression tu lit cet arbre et à la compression tu lis le fichier pour créer un nouvel arbre

- soit intégrer cet arbre dans le programme : tous les fichiers seront compressés et décompressés en utilisant cet arbre prédéfini, qui ne sera pas forcément optimal pour tous les fichiers

La deuxième méthode est surtout utilisée pour compresser du langage naturel car la fréquence des symboles dans celui-ci est facilement prédictible et généralement stable. Cela permet d'éviter une lecture préalable du flux, de coder l'arbre dans le fichier (moins d'overhead) et donc d'aller plus vite (forcément on fait moins de choses).

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...