Per qualificarsi come una stringa , i caratteri di una stringa più corta deve apparire in una stringa più lunga in ordine, ma non necessariamente insieme . Ad esempio, " tigre " è una sottostringa di " piccolo cetriolino " come " t", "i ", " g ", "e" e " r" tutto sembra in questo ordine in la stringa più grande. Se un'intera stringa presenta all'interno di un'altra , larga stringa , la stringa più piccola è una sottosequenza della stringa grande . Con un paio di stringhe brevi , individuando una sottosequenza comune è semplice , ma come stringhe diventano più lunghi , è più difficile farlo a occhio nudo .
Suffisso Albero
un modo per abbinare sottostringhe in C è la creazione di un albero di suffissi . Un albero suffisso prende una stringa di caratteri , come la sua radice , poi si dirama per mostrare ogni possibile sottostringa . Se " tigre " è la radice , i rami sono " tig ", "ge" e " ER", ognuno dei quali poi si dirama ulteriormente fino a quando si arriva alle foglie un solo carattere . È possibile creare un albero di suffissi automaticamente tramite un algoritmo e quindi utilizzare un altro algoritmo per abbinare i rami in due stringhe e di identificare le sequenze comuni .
Programmazione © www.354353.com