48
Platformă de e-learning și curriculă e-content pentru înv ățământul superior tehnic Transmisia datelor multimedia in retele de calculatoare 18. Algoritmul Lempel-Ziv-Welch

Platformăde e-learning și curriculăe-content pentru …andrei.clubcisco.ro/cursuri/f/f-sym/5master/aac-tdmrc/18... · 2012-05-22 · Algoritmul Lempel-Ziv-Welch •Idea de baza

  • Upload
    voquynh

  • View
    221

  • Download
    0

Embed Size (px)

Citation preview

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