Der Knuth-Morris-Pratt-Algorithmus - hu-berlin.de · Der Knuth-Morris-Pratt-Algorithmus Beispiel...

Post on 19-Oct-2020

2 views 0 download

Transcript of Der Knuth-Morris-Pratt-Algorithmus - hu-berlin.de · Der Knuth-Morris-Pratt-Algorithmus Beispiel...

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10

o l a l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o

l a l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o

l a l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l

a l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l

a l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a

l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a

l a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l

a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l

a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l

a o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a

o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a

o l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o

l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o

l a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l

a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l

a l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a

l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a

l a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l

a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l

a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l

a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l

a

k 1 2 3 4 5π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l a k 1 2 3 4 5

π(k) 0 0 0 1 2

Der Knuth-Morris-Pratt-Algorithmus

BeispielDer KMP-Algorithmus macht bei der Suche nach dem Muster y = laola imText x = olalaolala folgende Übergänge:

o l a l a o l a l a0

1

2

3

4

5

0 1 2 3 4 5 6 7 8 9 10o l a l a o l a l a k 1 2 3 4 5

π(k) 0 0 0 1 2