80 likes | 211 Views
Huffman-kódolás. Veszteségmentes kódolás Visszafejtése egyértelmű Egyik kódszó sem lehet része semelyik másiknak Lépések: 1.: Statisztika a kódolandó anyagról (egyes részletek gyakorisága)
E N D
Veszteségmentes kódolás • Visszafejtése egyértelmű • Egyik kódszó sem lehet része semelyik másiknak • Lépések: • 1.: Statisztika a kódolandó anyagról (egyes részletek gyakorisága) • 2.: Részlet helyettesítése kóddal: a minél gyakoribb részlet elofordulása annál rövidebb kódot kapjon
Példa: INFORMATIKA + MATEMATIKA • Megnézzük a karakterek gyakoriságát (szóköz = _): • Majd a párokat gyakoriságuk szerint rendezzük:
Helyettesítsük a két legkisebb előfordulású karaktert egy olyan új jellel, melynek az előfordulása annak a kettőnek az összege: Ezután a megmaradt karaktereket és az ág(ak)at sorba rendezzük: N1 2 2 2 4 4 F1 O1 R1 +1 E1 K2 _2 I3 M3 T3 A5 0 1 0 0 0 0 1 1 1 1
_2 I3 M3 T3 K2 A5 N1 5 2 2 4 2 6 4 8 F1 O1 R1 +1 E1 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1
_2 I3 M3 T3 K2 A5 N1 14 24 4 6 4 5 2 2 2 10 F1 8 O1 R1 +1 E1 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0
24 szóköz = 000 1 I = 001 Példa: INFORMATIKA + MATEMATIKA 0 14 A = 01 M = 100 0 1 T = 101 6 8 N = 11000 10 F = 11001 0 1 0 1 K = 1101 M3 T3 0 1 + = 11100 E = 11101 4 4 5 A5 O = 11110 0 1 R = 11111 0 1 0 1 _2 I3 2 2 2 K2 0 1 0 1 0 1 N1 F1 +1 E1 O1 R1
szóköz = 000 A példa Huffman-kódolással tömörítve: 001 11000 11001 11110 11111 100 01 101 001 1101 01 000 11100 000 100 01 101 11101 100 01 101 001 1101 01 A példa hossza: 192 bit (ha 1 karakter = 8 bit) A tömörített példa hossza: 81 bit Fényes Balázs 9. o. t. Budapest, Szerb A. Gimn. fenyes.balazs@freemail.hu I = 001 Példa: INFORMATIKA + MATEMATIKA A = 01 M = 100 T = 101 N = 11000 F = 11001 K = 1101 + = 11100 E = 11101 O = 11110 R = 11111