User:Arjun G. Menon/Levenshtein distance
Code for calculating Levenshtein distance in MATLAB.
function [dist, D] = wdist(s, t)
%Computers the Levenshtein distance between two strings
m = length(s);
n = length(t);
if (m==0)
dist = n;
return
elseif (m==0)
dist = n;
return
end
% init matrix
D(m+1,n+1) = 0;
for i = 1:m+1
D(i, 1) = i-1;
end
for j = 1:n+1
D(1, j) = j-1;
end
for j = 2:n+1
for i = 2:m+1
if (s(i-1)==t(j-1))
D(i, j) = D(i-1, j-1);
else
D(i, j) = min([
D(i-1, j) + 1,
D(i, j-1) + 1,
D(i-1,j-1)+ 1]);
end
end
end
dist = D(m+1,n+1);
end