Unité d’Enseignement M3103 :
Algorithmique avancée
Cours 3 – Algorithme de
Huffman pour la compression
de données
Conservatoire National des Arts et Métiers
D. Porumbel et E. Soutil
UE M3103
Algorithmique avancée – Plan du cours
1. Récursivité
2. Tris
3. Algorithme de Huffman (compression de
données)
4. Preuves d'algorithmes
5. Complexité des algorithmes
6. Recherche de chaînes de caractères
7. Une heuristique de recherche locale
M3103 Algorithmique avancée Cours 3 – Algorithme de Huffman
2
Compression de données : codage de Huffman
Compression de données :
Gain de place de 20 à 90% (fichiers de texte)
C = {caractères}
À ciC on associe une chaîne binaire unique, de plus
ou moins 8 bits
Exemple :
C = alphabet
d : 01 f :101 m : 0110 ...
Codage de dfd = 0110101
Mais : mf 0110101 (= dfd !)
3
M3103 Algorithmique avancée Cours 3 – Algorithme de Huffman
Codage préfixe
4
Règle à respecter pour un codage non ambigü :
aucun code ne doit être préfixe d’un autre code.
Cette règle rend le décodage facile
Exemple :
face 101000010100 face
Objectif : concevoir le codage et savoir décoder
efficacement
M3103 Algorithmique avancée Cours 3 – Algorithme de Huffman
Exemple (suite) : arbre associé
5
Arbre binaire (0 sur fils gauche, 1 sur fils droit). Si
l’arbre est parfait, tous les codes sont de même
longueur.
M3103 Algorithmique avancée Cours 3 – Algorithme de Huffman
1 / 14 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !