Ho scritto la mia versione della funzione strstr in c. Sto usando una matrice temporanea di dimensione 26. Quindi la complessità spaziale O (1) o O (n)? Questo è il mio codice:
void strcheck(char t[], int n, char p[], int m)
{
int i, j, k;
int temp[26];
for (i = 0; i < 25; ++i)
temp[i] = 0;
for (i = 0; i < n; ++i)
{
k = t[i] - 'a';
temp[k]++;
}
for (j = 0; j < m; j++)
{
k = p[j] - 'a';
if (temp[k] > 0)
temp[k]--;
else
break;
}
if (j == m)
printf("string occured\n");
else
printf("not occured\n");
}
Il programma funziona correttamente, voglio solo sapere della complessità dello spazio. Grazie