20 lines
418 B
Lua
20 lines
418 B
Lua
function leven(s,t)
|
|
if s == '' then return t:len() end
|
|
if t == '' then return s:len() end
|
|
|
|
local s1 = s:sub(2, -1)
|
|
local t1 = t:sub(2, -1)
|
|
|
|
if s:sub(0, 1) == t:sub(0, 1) then
|
|
return leven(s1, t1)
|
|
end
|
|
|
|
return 1 + math.min(
|
|
leven(s1, t1),
|
|
leven(s, t1),
|
|
leven(s1, t )
|
|
)
|
|
end
|
|
|
|
print(leven("kitten", "sitting"))
|
|
print(leven("rosettacode", "raisethysword"))
|