Sottostringa
Una sottostringa, sottosequenza, prefisso o suffisso di una stringa è un sottoinsieme di simboli in una stringa, in cui l'ordine degli elementi è preservato. In questo contesto, i termini stringa e sequenza assumono lo stesso significato.
Sottosequenza
Una sottosequenza di una strina è una stringa tale che , dove . La sottosequenza è una generalizzazione del concetto di sottostringa, suffisso e prefisso. Trovare la stringa più lunga uguale a una sottosequenza di due o più stringhe è noto come il problema della sottosequenza comune più lunga.
Esempio: la stringa anna è una sottosequenza della stringa banana:
banana || || an na
Sottostringa
Una sottostringa (o fattore) di una stringa è una stringa , dove e . Una sottostringa di una stringa è un prefisso di un suffisso della stringa o, in modo equivalente, un suffisso di un prefisso della stringa. Se è una sottostringa di , essa è anche una sottosequenza, che è un concetto più generale. Dato un pattern , è possibile trovarne le occorrenze in una strina mediante un algoritmo di ricerca su stringhe. Trovare la stringa più lunga uguale a una sottostringa di due o più stringhe è noto come il problema della sottostringa comune più lunga.
Esempio: La stringa ana è una sottostringa (e sottosequenza) di banana in due posizioni differenti:
banana ||||| ana|| ||| ana
Nella letteratura matematica, le sottostringhe sono anche chiamate subwords (in America) o fattori (in Europa).