Code translated into scratch by me, original algorithm by Levenshtein. The Levenshtein distance of 2 words. In short, the Levenshtein distance is what are the least amount of edits you can make to transform word 1 to word 2, or vice versa. There are 3 operations you can do to transform a word, insert (add) a letter, delete a letter, or replace a letter. If any of the above operations are needed to be done, then the edit distance increases by one. If the current letter being compared of both words are the same, the edit distance doesn't change This iterates over both the words, and uses 2 lists to store the values, rather than the traditional "3d" list storing arrays of all the different combinations, making this much faster and memory efficient. At the end, the lists are swapped, and the edit distance is the last item of v0. If you happen to find 2 words when compared have the incorrect edit distance, let me know and I'll go ahead and fix it.