Blocco funzionale SIMILAR_TEXT

Il blocco funzionale SIMILAR_TEXT calcola la somiglianza tra due stringhe.

Il calcolo della somiglianza tra due stringhe avviene secondo il metodo descritto in Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN 0-131-00413-1). Si noti che questa implementazione non utilizza uno stack come nel Pseudo-Codice di Oliver, ma utilizza chiamate ricorsive che possono migliorare le prestazioni (ma non devono). Si noti anche che la complessità di questo algoritmo è O(N³), dove N è la lunghezza della stringa più lunga.

Ingresso STR1

L'ingresso definisce la prima stringa da confrontare.

Ingresso STR2

L'ingresso definisce la seconda stringa da confrontare.

Uscita SIM

L'uscita restituisce il numero di caratteri corrispondenti nelle due stringhe.

Il numero di caratteri corrispondenti viene calcolato cercando la più lunga sottostringa comune iniziale e ripetendo poi ricorsivamente per i prefissi e suffissi. Le lunghezze di tutte le sottostringhe comuni trovate vengono sommate.

Uscita PERCENT

L'uscita restituisce la somiglianza come valore percentuale come numero a virgola mobile. A tal fine, il risultato viene diviso per la media delle lunghezze delle stringhe specificate e moltiplicato per 100.