Platformă de e-learning și curriculă e-contentpentru învățământul superior tehnic
Transmisia datelor multimedia in retele de calculatoare
18. Algoritmul Lempel-Ziv-Welch
Algoritmul Lempel-Ziv-Welch
• Idea de baza este de a imparti (parse-in limba
engleza) secventa de intrare in blocuri (siruri) diferite
de lungime diferita
• Multimea blocurilor diferite defineste un dictionar
• Indexul cuvintelor din dictionar este salvat in fisierul
comprimat.
Algoritmul Lempel-Ziv-Welch
ALGORITM DE CODARE LZW:
Date intiale: Alfabetul A; secventa de intrare in; #1. Initializeaza dictionarul cu simbolurile alfabetului;
#2. Initializeaza secventa comprimata: code =’’;#3. Citeste primul caracter de intrare, sirul prefix S: S = in(1);
#4. CAT TIMP nu s-a parcurs toata secventa de intrare EXECUTA:#4.1.Citeste urmatorul caracter de intrare: K = in(i+1).
#4.2. DACA sirul SK este in tabel ATUNCI
#4.2.1. Asigneaza: S = SK; ALTFEL
#4.2.2. Memoreaza SK in dictionar;#4.2.3. Asigneaza: S = K;
#4.2.4. Scrie: code = code + code(S)END #4.2;
END #5;END.
Exemplu (1)
• Fie mesajul „abba_baba_buba” si dictionarul
initializat cu alfabetul sursei, adica D={a,_,b,u}.
• Initializare:
▫ code={}, S=’’;
▫ D={a,_,b,u}.
• Citeste primul caracter: „abba_baba_buba”;"","","" aSKSDaSKaK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba”
""
}1{)"(")(
},,_,,{}{
"",""
bKS
aindexcodeSindexcodecode
abubaSKDD
DabSKbK
""
}3,1{)"(")(
},,,_,,{}{
"",""
bKS
bindexcodeSindexcodecode
bbabubaSKDD
DbbSKbK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba
_""
}1,3,3,1{)"(")(
_},,,,,_,,{}{
_"",_""
KS
aindexcodeSindexcodecode
ababbabubaSKDD
DaSKK
""
}3,3,1{)"(")(
},,,,_,,{}{
"",""
aKS
bindexcodeSindexcodecode
babbabubaSKDD
DbaSKaK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba”
""
}2,1,3,3,1{)_"(")(
}__,,,,,,_,,{}{
"_",""
bKS
indexcodeSindexcodecode
bababbabubaSKDD
DbSKbK
"""","" baSKSDbaSKaK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba”
""
}7,2,1,3,3,1{)"(")(
},__,,,,,,_,,{}{
"",""
bKS
baindexcodeSindexcodecode
babbababbabubaSKDD
DbabSKbK
"""","" baSKSDbaSKaK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba”
_""
}7,7,2,1,3,3,1{)"(")(
_},,__,,,,,,_,,{}{
_"",_""
KS
baindexcodeSindexcodecode
baababababbabubaSKDD
DbaSKK
"_""_","" bSKSDbSKbK
Exemplu (1)
• Citeste urmatorul caracter „abba_baba_buba”
• Citeste urmatorul caracter „abba_baba_buba”
""
}9,7,7,2,1,3,3,1{)"_(")(
}_,,__,,,,,,_,,{}{
"_",""
uKS
bindexcodeSindexcodecode
buababababbabubaSKDD
DbuSKuK
""
}4,9,7,7,2,1,3,3,1{)"(")(
},_,,__,,,,,,_,,{}{
"",""
bKS
uindexcodeSindexcodecode
ubbuababababbabubaSKDD
DubSKbK
Exemplu (1)• Citeste urmatorul caracter „abba_baba_buba”
• Rezultatele finale sunt:
D = { 'a' '_' 'b' 'u' 'ab' 'bb' 'ba' 'a_' '_b' 'bab' 'ba_' '_bu' 'ub'}
code = {1, 3, 3, 1, 2, 7, 7, 9, 4}
• Presupunand ca se cunoaste alfabetul si dictionarul, atat la emisie cat si la receptie, ar rezulta un raport de compresie maxim
48.245
112
5*_9
8*14
bitiindexsimboluri
bitisimboluriRC
"""","" baSKSDbaSKaK
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6
7
8
9
10
Dictionar: Output:
Input: wabbawabbawabbawabbawoowoowoo
S =
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6
7
8
9
10
Dictionar: Output:
Input: wabbawabbawabbawabbawoowoowoo
S = w
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7
8
9
10
Dictionar: Output:
5 (‘w’)
Input: -abbawabbawabbawabbawoowoowoo
S = wa
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8
9
10
Dictionar: Output:
5 (‘w’)
2 (‘a’)
Input: --bbawabbawabbawabbawoowoowoo
S = ab
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9
10
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
Input: ---bawabbawabbawabbawoowoowoo
S = bb
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
Input: ----awabbawabbawabbawoowoowoo
S = ba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
Input: -----wabbawabbawabbawoowoowoo
S = a
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
Input: ------wabbawabbawabbawoowoowoo
Index Intr.
11 w
12
13
14
15
16
17
18
19
20
S = w
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
Input: -------abbawabbawabbawoowoowoo
Index Intr.
11 w
12
13
14
15
16
17
18
19
20
S = wa
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
Input: --------bbawabbawabbawoowoowoo
Index Intr.
11 w
12 wab
13
14
15
16
17
18
19
20
S = wab
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
Input: ---------bawabbawabbawoowoowoo
Index Intr.
11 w
12 wab
13
14
15
16
17
18
19
20
S = bb
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
Input: ----------awabbawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14
15
16
17
18
19
20
S = bba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
Input: -----------wabbawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14
15
16
17
18
19
20
S = a
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
Input: ------------wabbawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15
16
17
18
19
20
S = a w
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
Input: -------------abbawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15
16
17
18
19
20
S = wa
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
Input: --------------bbawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15
16
17
18
19
20
S = wab
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
Input: ---------------bawabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16
17
18
19
20
S = wabb
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
Input: ----------------awabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16
17
18
19
20
S = ba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
Input: -----------------wabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17
18
19
20
S = ba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
Input: ------------------wabbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17
18
19
20
S = w
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
Input: -------------------abbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18
19
20
S = wa
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
Input: --------------------bbawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18
19
20
S = ab
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
Input: ---------------------bawoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19
20
S = abb
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
Input: ----------------------awoowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19
20
S = ba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
Input: -----------------------woowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19
20
S = ba
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ------------------------woowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20
S = ba w
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: -------------------------oowoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = wo
5 (‘w’)
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: --------------------------owoowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = oo
5 (‘w’)
4 (‘o’)
Index Intr.
21 oo
22
23
24
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ---------------------------woowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = o
5 (‘w’)
4 (‘o’)
4 (‘o’)
Index Intr.
21 oo
22 o
23
24
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ----------------------------woowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = w
5 (‘w’)
4 (‘o’)
4 (‘o’)
Index Intr.
21 oo
22 o
23
24
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: -----------------------------oowoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = wo
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
Index Intr.
21 oo
22 o
23 wo
24
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ------------------------------owoo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = oo
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
Index Intr.
21 oo
22 o
23 wo
24
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: -------------------------------woo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = oo
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
21 (‘oo’)
Index Intr.
21 oo
22 o
23 wo
24 oo
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: --------------------------------woo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = w
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
21 (‘oo’)
Index Intr.
21 oo
22 o
23 wo
24 oo
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ---------------------------------oo
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = wo
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
21 (‘oo’)
Index Intr.
21 oo
22 o
23 wo
24 oo
25
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: ----------------------------------o
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = woo
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
21 (‘oo’)
23 (‘ wo’)
Index Intr.
21 oo
22 o
23 wo
24 oo
25woo
26
27
28
29
30
Exemplu (2)
Index Intr.
1
2 a
3 b
4 o
5 w
6 wa
7 ab
8 bb
9 ba
10 a
Dictionar: Output:
5 (‘w’)
2 (‘a’)
3 (‘b’)
3 (‘b’)
2 (‘a’)
1 (‘ ’)
6 (‘wa’)
8 (‘bb’)
10 (‘a ’)
12 (‘wab’)
9 (‘ba’)
11 (‘ w’)
7 (‘ab’)
16 (‘ba ’)
Input: -----------------------------------
Index Intr.
11 w
12 wab
13 bba
14 a w
15 wabb
16 ba
17 wa
18 abb
19 baw
20 wo
S = o
5 (‘w’)
4 (‘o’)
4 (‘o’)
11 (‘ w’)
21 (‘oo’)
23 (‘ wo’)
4 (‘o’)
Index Intr.
21 oo
22 o
23 wo
24 oo
25woo
26
27
28
29
30