Salve a tutti,

ho scritto il seguente codice per lo string matching tra una variabile "testo" e un "pattern":

codice:
int Ricercabruta (vettore T, vettore P, int n, int m)
{
   int i, j, k;
   i=j=k=0;
   while ((i<=n) && (j<=m))
   	{
      	if (T[i]==P[j])
         	{
            	i++;
                j++;
                }
         else
         	{
            	k++;
                i=k;
                j=0;
                }
         }
   if (j>m) return (k-m);
   	else return (-1);
}
La funzione dovrebbe ritornare l'indice che in "testo" mi indica l'inizio dell'occorrenza di "pattern".
L'algoritmo è piuttosto lineare, ma non funziona.

Qualcuno sa darmi una mano ?
Grazie.