我正在研究模糊搜索以及如何使用反向索引从数据库中检索信息。我研究了倒置索引,我认为它只适用于精确匹配。想象一下我的数据库中有字符串East Lamar Street
的情况。有人正在寻找East Lmar Street
和我要找的East Lamar Street
。
它会使用编辑距离吗?
算法将如何运作?
数据库是否会使用倒排索引?
或者它会进行全面扫描?
我看到它使用哈希来在O(1)中进行操作。
答案 0 :(得分:1)
我编写了一个小型库,使用Soundex按字索引,并使用Levenshtein距离对整个短语进行评分。有一个scala和C#版本。如果您可以负担将所有街道名称加载到内存中,则可以使用此方法。否则你可能会采取一些来源并以不同的方式使用它。