Приветствуем stackoverflowers!
У меня есть список слов из 200 000 записей строк, средняя длина строки составляет около 30 символов. Этот список слов является ключом, и для каждого ключа у меня есть объект домена. Я хотел бы найти объекты домена в этой коллекции, зная только часть ключа. И.Е. строка поиска "kov" соответствовала бы, например, ключевому "stackoverflow".
В настоящее время я использую тройное дерево поиска (TST), которое обычно найдет элементы в течение 100 миллисекунд. Это слишком медленно для моих требований. Реализация TST может быть улучшена с небольшими оптимизациями, и я мог бы попытаться сбалансировать дерево. Но я подумал, что эти вещи не дадут мне 5x - 10x улучшение скорости, на которое я нацеливаюсь. Я предполагаю, что причиной столь медленной является то, что я в основном должен посетить большинство узлов в дереве.
Любые идеи о том, как улучшить скорость алгоритма? Есть ли другие алгоритмы, над которыми я должен смотреть?
Спасибо заранее, Oskar