Bllok Funksion SIMILAR_TEXT

Blloku i funksioneve SIMILAR_TEXT llogariton ngjashmërinë e dy vargjeve të karaktereve.

Llogaritja e ngjashmërisë së dy vargjeve të karaktereve bëhet sipas metodes që është përshkruar në Programming Classics: Implementing the World's Best Algorithms nga Oliver (ISBN 0-131-00413-1). Ju lutemi, merrni parasysh se ky implementim nuk përdor një stack si në pseudo-kodin e Oliverit, por ka thirrje të rikursive që mund të përmirësojnë performancën (por nuk duhet). Merrni gjithashtu parasysh se kompleksiteti i këtij algoritmi është O(N³), ku N është gjatësia e vargut më të gjatë të karaktereve.

Hyrja STR1

Hyrja përcakton vargun e parë të karaktereve që duhet të krahasohet.

Hyrja STR2

Hyrja përcakton vargun e dytë të karaktereve që duhet të krahasohet.

Dalja SIM

Dalja kthen numrin e karaktereve të përbashkët në dy vargjet e karaktereve.

Numri i karaktereve të përbashkët llogaritet duke gjetur vargun më të gjatë të përbashkët të karaktereve dhe pastaj duke përsëritur këtë proces rekursivisht për prefikset dhe sufiksat. Gjatësitë e të gjitha vargjeve të përbashkëta të karaktereve të gjendura shtohen së bashku.

Dalja PERCENT

Dalja kthen ngjashmërinë si një vlerë përqindjeje si një numër me pikë të lëvizshme. Ky rezultati ndahet nga mesatarja e gjatësive të vargjeve të karaktereve të dhëna dhe shumëzohet me 100.