Предполагая, что построена общая фраза словарных слов, какой лучший способ проверить 4 случая орфографических ошибок - замену, удаление, транспозицию и вставку во время обхода?
Один метод состоит в том, чтобы выяснить все слова в пределах n редактируемых расстояний данного слова, а затем проверить их в Trie. Это не плохой вариант, но лучше интуиция здесь, по-видимому, использует метод динамического программирования (или рекурсивный эквивалент) для определения лучших подтестов после изменения слов во время обхода.
Любые идеи приветствуются!
PS, оценил бы фактические данные, а не только ссылки в ответах.