В настоящее время я пытаюсь реализовать алгоритм поиска, в котором пользователь вводит строковый запрос, который будет сравниваться с объектом, содержащим список строковых «тегов» или просто однословных строк. Я хочу, чтобы результат был списком объектов, отсортированных по списку, который наилучшим образом соответствовал этому запросу.
Моя текущая реализация использует расстояние Левенштейна для каждого тега с запросом, добавляя его к итоговому значению и деля на количество тегов. Однако я представляю много минусов в этом подходе, и мне было интересно, есть ли более распространенный подход к этому.