У нас есть список около 150 000 слов, и когда пользователь вводит свободный текст, система должна представить список слов из словаря, которые очень близки к словам в свободном тексте.
Например, пользователь вводит: "Я хотел бы купить Lego Toys в Walmart". Если словарь содержит слова "Лего", "Автомобиль" и "Уолмарт", система должна представить в списке "Лего" и "Уолмарт". "Walmart" очевиден, потому что он идентичен слову в предложении, но "Lego" достаточно похож на "Legoe", о котором следует упомянуть. Однако ничего не похоже на "Автомобиль", так что слово не отображается.
Отображение списка должно быть в реальном времени, а это означает, что когда пользователь ввел предложение, список слов должен присутствовать на экране. Кто-нибудь знает хороший алгоритм для этого?
Словарь фактически содержит понятия, которые могут включать пробел. Например, "Космический корабль Лего". Идеальное решение также распознает эти многословные концепции.
Любые предложения приветствуются.