我有一个非常庞大的字符串列表存储在NoSQL数据库中。查询输入是一个字符串,我想检查该字符串是否存在于列表中。对于完全匹配,这很简单。该NoSQL数据库可能将字符串作为主键,并且我只需要检查是否有任何记录具有该字符串作为主键。但是我还需要检查模糊匹配。
有一种方法是遍历列表中的每个字符串,并检查输入字符串与列表中的字符串的Levenshtein距离,但是这种方法将导致O(n)复杂度,而列表的大小非常大(1000万),甚至可能会增加。这种方法将导致我的解决方案延迟更高。
有没有更好的方法来解决这个问题?
有一种方法是遍历列表中的每个字符串,并检查输入字符串与列表中的字符串的Levenshtein距离,但是这种方法将导致O(n)复杂度,而列表的大小非常大(1000万),甚至可能会增加。这种方法将导致我的解决方案延迟更高。
有没有更好的方法来解决这个问题?