// localiser-selon-prefixe.c // << Algorithmique du texte >> // Maxime Crochemore, Christophe Hancart et Thierry Lecroq // Vuibert, 2001. #include <stdio.h> #include "chl.h" void localiserSelonPrefixe(Mot x, Longueur m, int pi[], Mot y) { int i, j; i = 0; for (j = 0; *y != '\0'; ++j, ++y) { // Ici, x[0..i-1] est le plus long prefixe de x // qui est egalement un suffixe de y if (i == m) i = pi[m]; while (i >= 0 && *y != x[i]) i = pi[i]; ++i; signalerSi(i == m); } }