Cody

Problem 848. Calculate a modified Levenshtein distance between two strings

Solution 489921

Submitted on 23 Aug 2014 by rifat
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% s1 = 'I do not like MATLAB'; s2 = 'I love MATLAB a lot'; d_correct = 4; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'i' 'do' 'not' 'like' 'matlab' c2 = 'i' 'love' 'matlab' 'a' 'lot'

2   Pass
%% s1 = 'Which words need to be edited?'; s2 = 'Can you tell which words need to be edited?'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'which' 'words' 'need' 'to' 'be' 'edited' c2 = 'can' 'you' 'tell' 'which' 'words' 'need' 'to' 'be' 'edited'

3   Pass
%% s1 = 'Are these strings identical?'; s2 = 'These strings are not identical!'; d_correct = 3; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'are' 'these' 'strings' 'identical' c2 = 'these' 'strings' 'are' 'not' 'identical'

4   Pass
%% s1 = 'Settlers of Catan is my favorite game'; s2 = 'Tic-tac-toe is also one of my favorite games'; d_correct = 6; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'settlers' 'of' 'catan' 'is' 'my' 'favorite' 'game' c2 = 'tic-tac-toe' 'is' 'also' 'one' 'of' 'my' 'favorite' 'games'

5   Pass
%% s1 = 'This one should be simple, but maybe it isn''t'; s2 = 'This one should be simple, but maybe it isn''t'; d_correct = 0; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'this' 'one' 'should' 'be' 'simple' 'but' 'maybe' 'it' 'isn't' c2 = 'this' 'one' 'should' 'be' 'simple' 'but' 'maybe' 'it' 'isn't'

6   Pass
%% s1 = 'Testing, testing, one, two, three,...'; s2 = 'Testing, testing, one, two,...'; d_correct = 1; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = 'testing' 'testing' 'one' 'two' 'three' c2 = 'testing' 'testing' 'one' 'two'

7   Pass
%% s1 = 'How many edits do you think there are in this example? I don''t know!'; s2 = 'Well, it is hard to tell how many edits are required because there are big differences in the two strings.'; d_correct = 15; assert(isequal(modlevenshtein(s1,s2),d_correct))

c1 = Columns 1 through 10 'how' 'many' 'edits' 'do' 'you' 'think' 'there' 'are' 'in' 'this' Columns 11 through 14 'example' 'i' 'don't' 'know' c2 = Columns 1 through 10 'well' 'it' 'is' 'hard' 'to' 'tell' 'how' 'many' 'edits' 'are' Columns 11 through 19 'required' 'because' 'there' 'are' 'big' 'differences' 'in' 'the' 'two' Column 20 'strings'

Suggested Problems

More from this Author44

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!