Skip to content

The repo is about implementation of Wagner-Fischer algorithm for calculating Levenshtein distance between two strings.

License

Notifications You must be signed in to change notification settings

athlohangade/minimum-edit-distance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minimum Edit Distance

Theory

Wagner-Fischer algorithm is a non-probabilistic, dynamic programming algorithm that computes the edit distance (Levenshtein distance) between two strings.

The edit distance between two strings gives the measure of how alike or similar two strings are to each other. There are different types of edit distance depending upon the set of string operations allowed. For example, Levenshtein distance, Longest Common Subsequence (LCS) distance, Hamming distance, etc. As the term Levenshtein distance is most common metric, it is often used interchangeably with edit distance. For more information on Levenshtein distance, refer wiki.

The minimum edit distance or the Levenshtein distance between two strings is the minimum number of editing operations (insertion, deletion, substitution) needed to transform one string into another.

The program wagner_fischer.py is the implementation of Wagner-Fischer algorithm. The cost of edit operations can be changed with default cost as: insertion - 1, deletion - 1, substitution - 2.

For more details of the algorithm, refer algorithm_details.pdf.

Usage

python3 wagner_fischer.py

Example :

Wagner Fischer example

Edit Distance Table :

Edit Distance Table

About

The repo is about implementation of Wagner-Fischer algorithm for calculating Levenshtein distance between two strings.

Topics

Resources

License

Stars

Watchers

Forks

Languages