There are certain spell-correcting features in search engines like google...

What I want to do is this: If the word entered by the user doesn't match with any of the words in the databases, the program should try to find the word in the database that is closest to the input. How should I calculate the similarity between any two words?

I'm sure there'll be standard algorithms for it... But I don't know the exact names of any of them. Please post the names of the algorithms by which the above task can be accomplished.


Thank you Ed. The link you gave was very helpful :)

Stemming is another algorithm I found to be of interest for similiar purposes.