Algorithms and Data Structures best suited for a spell checker, dictionary and a thesaurus

algorithm, c, c++, data-structures

Solution

See this for a 21-line Python 2.5 spelling corrector and a bit of background.

Problem

Best way to implement a - dictionary (is there any DS better than Trie for Dictionary) - thesaurus (no idea, as match is made on meanings of the words, similar meanings) - spell checker (something better than a hash map), if possible with correct spelling recommendations. When asked in a one hour interview, are we expected to write a c/c++ code, for the algorithm?

Original source