Cody

Problem 848. Calculate a modified Levenshtein distance between two strings

Solution 2716035

Submitted on 20 Jul 2020 by Jens Kjærgaard Boldsen
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))

cs1 = 1×5 string array "i" "do" "not" "like" "matlab" cs2 = 1×5 string array "i" "love" "matlab" "a" "lot" d = 4

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))

cs1 = 1×6 string array "which" "words" "need" "to" "be" "edited" cs2 = 1×9 string array "can" "you" "tell" "which" "words" "need" "to" "be" "edited" d = 3

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

cs1 = 1×4 string array "are" "these" "strings" "identical" cs2 = 1×5 string array "these" "strings" "are" "not" "identical" d = 3

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))

cs1 = 1×7 string array "settlers" "of" "catan" "is" "my" "favorite" "game" cs2 = 1×8 string array "tic-tac-toe" "is" "also" "one" "of" "my" "favorite" "games" d = 6

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))

cs1 = 1×9 string array "this" "one" "should" "be" "simple" "but" "maybe" "it" "isn't" cs2 = 1×9 string array "this" "one" "should" "be" "simple" "but" "maybe" "it" "isn't" d = 0

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

cs1 = 1×5 string array "testing" "testing" "one" "two" "three" cs2 = 1×4 string array "testing" "testing" "one" "two" d = 1

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))

cs1 = 1×14 string array "how" "many" "edits" "do" "you" "think" "there" "are" "in" "this" "example" "i" "don't" "know" cs2 = 1×20 string array Columns 1 through 17 "well" "it" "is" "hard" "to" "tell" "how" "many" "edits" "are" "required" "because" "there" "are" "big" "differences" "in" Columns 18 through 20 "the" "two" "strings" d = 15

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!