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

Садржај обрисан Садржај додат
Ред 27:
== Алгоритам ==
=== Рекурзивно ===
Рекурзивна имплементација <code>LevenshteinDistance</code> функције узима двадве стринганиске, „s“ и „t“ и враћа Левенштајново растојање између њих:
<!-- This routine would be clearer if len_s and len_t were args. -->
<source lang="C">
Ред 51:
 
 
Рекурзивна имплементација је доста неефикасна због тога што рачуна Левенштајново растојање субстрингаподниске много пута. Бољи метод не би понављао израчунавања. На пример, Левенштајново растојање свих могућих префикса моземоже бити смештенсмештено у низ <code>d[][]</code> где је <code>d[i][j]</code> је растојање између првог <code>i</code> карактера стринганиске <code>s</code> и првог <code>j</code> карактера стринганиске <code>t</code>. Табела је једноставна за конструкцију почевши од реда 0. Када је цела табела израђена, зељенажељена дистанца је <code>d[len_s][len_t]</code>.. Иако је ова техника значајно брзабржа захтеваће zahtevaće <code>len_s * len_t</code> више меморије него рекурзивна имплементација.
 
 
=== Итеративно са целом матрицом ===