Algorithmique et Analyse d’Algorithmes
Algorithmique et Analyse d’Algorithmes
L3 Info
Cours 9 : Codage et compression
Benjamin Wack
2016 - 2017
1 / 31
Algorithmique et Analyse d’Algorithmes
La dernière fois
IArbre partiellement ordonné
IStructure de tas
IApplication à la FAP
IAlgorithmes gloutons
Aujourd’hui
ICodage
IEntropie
IAlgorithme de Huffman
2 / 31
Algorithmique et Analyse d’Algorithmes
Plan
Codage
Notion de code et arbre
Notion de code préfixe
Entropie
Algorithme de Huffman
Fonctionnement
Analyse
3 / 31
Algorithmique et Analyse d’Algorithmes
Codage
Notion de code et arbre
Codage
On dispose d’un alphabet de symboles S={s1,· · · ,sk}
(caractères, lexèmes, notes de musique...).
Code
Un code (binaire) Csur Sest une fonction :
C:S → {0,1}
si7−C(si)de longueur li
On code ensuite tout mot ude Spar
C(u1. . . un) = C(u1). . . C(un)
(peut être adapté pour un autre alphabet d’arrivée)
5 / 31
Algorithmique et Analyse d’Algorithmes
Codage
Notion de code et arbre
(Non-)Ambigüité du codage
Propriété désirable pour tout code
Le code Cest uniquement déchiffrable si
c∈ {0,1}
,il existe au plus un mot u∈ Stel que C(u) = c
autrement dit :
IC:S→ {0,1}est injective.
ITout mot binaire ou bien admet un unique décodage, ou bien n’est
pas un mot code.
Exemple de codage non ambigü
S={a,b}et le code Ctel que C(a) = 01, C(b) = 10.
Tout mot admet au plus un décodage.
Exemple de codage ambigü
S={x,y,z}et le code Ctel que C(x) = 0, C(y) = 10 et C(z) = 01.
Le mot 010 peut être décodé en xy ou en zx.6 / 31
1 / 37 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 !