Левенштајново растојање — разлика између измена

Садржај обрисан Садржај додат
м Робот: додато {{subst:User:Autobot/sandbox2}}
Autobot (разговор | доприноси)
м Разне исправке
Ред 56:
=== Итеративно са целом матрицом ===
Израчунавање Левенштајновог растојања је базирано на запажању да ако резервишемо матрицу за чување растојања између свих префикса прве ниске и свих префикса друге, онда можемо да израчунамо вредности у матрици помоћу динамичког програмирања и тако нађемо растојање између два пуне ниске.
Овај алгоритам је пример „одоздо на горе“ динамичког програмирања, као што је дискутовано, са варијацима, 1974. године у ''The [[String-to-string correction problem]]'' од Robert A. Wagner and Michael J. Fischer.<ref>{{citation |first=Robert A. |last=Wagner |first2=Michael J. |last2=Fischer |author2-link=Michael J. Fischer |title=The String-to-String Correction Problem |journal=Journal of the ACM |volume=21 |issue=1 |year=1974|pages=168-173 |doi= 10.1145/321796.321811|pages=168-173}}</ref>
Имплементација функције Леванштајновог растојања која узима две ниске, „с“ дужине “м“ и ниску „т“ дужине „н“ и враћа Левенштајново растојање између та две ниске.
<source lang="C">
Ред 182:
=== Итеративно са два реда матрице ===
Испада да само два реда табеле су потребна за конструкцију: претходни ред и тренутни ред(онај који се рачуна).
Левенштајново растојање може се рачунати итеративно користећи следећи алгоритам: : :<ref>{{Citation |title=Fast, memory efficient Levenshtein algorithm |first=Sten |last=Hjelmqvist |first=Sten|date=26 Mar 2012 |url=http://www.codeproject.com/Articles/13525/Fast-memory-efficient-Levenshtein-algorithm}}</ref>
<syntaxhighlight lang="CSharp">
static int LevenshteinDistance(string s, string t)