Расстояние Левенштейна - один из лучших способов найти сходство между двумя словами, но это не поможет вам с бинарным поиском, потому что бинарный поиск работает в отсортированной коллекции и эффективно ищет объект, равныйзаданное значение.
С расстоянием Левенштейна вы ищете не то, что соответствует вашему поисковому запросу, вы ищете элемент, который является наиболее похожим (наименьшее расстояние Левенштейна).Вам нужно будет оценить каждый элемент в списке, чтобы выяснить, какой из них наиболее близок.
Другая возможность - Soundex.Алгоритм Soundex пытается уловить, как звучит слово.Он выбрасывает все гласные, а затем кодирует согласные, давая вам число, представляющее звук слова.Используя это, вы можете сохранить список объектов с их значениями soundex, а затем найти в нем значение soundex, близкое к значению вашего поискового запроса.Однако у вас все равно будет проблема отсутствия точного значения для поиска.