| $KMP(T: \sum [n]; P: \sum [m]; S : \mathbb{N} \{\})$ |
| $\pi/1: \mathbb{N} [m]$ | ||||||
| $init(\pi, P)$ | ||||||
| $S := \{\}$ | ||||||
| $i := 0$ | ||||||
| $j := 0$ | ||||||
| $i < n$ | ||||||
|
$T[i] = P[j]$
|
||||||
| $i := i + 1$ |
$j = 0$
|
|||||
| $j := j + 1$ | $i:=i+1$ | $j:=\pi[j]$ | ||||
|
$j = m$
|
||||||
| $S := S \cup \{i-m\}$ | $\text{SKIP}$ | |||||
| $j := \pi[j]$ | ||||||
| $init(\pi/1: \mathbb{N}[m]; P: \sum [m])$ |
| $\pi[1] := 0$ | |||||
| $i := 0$ | |||||
| $j := 1$ | |||||
| $j < m$ | |||||
|
$P[i] = P[j]$
|
|||||
| $i := i + 1$ |
$i = 0$
|
||||
| $j := j + 1$ | $j := j + 1$ | $i :=\pi[i]$ | |||
| $\pi[j] := i$ | $\pi[j] := 0$ | ||||
Az alábbi feladatok a gyakorlatokon elvégzendő kötelező, illetve gyakorló feladatok.