【发布时间】:2013-09-06 09:50:35
【问题描述】:
我有一个大型文档,我想建立一个用于单词搜索的索引。 (我听说这种类型的数组真的被称为索引)。目前大约需要 10 分钟。有没有快速的方法呢?目前我遍历每个段落,如果我找到一个我以前没有遇到过的单词,我也将它添加到我的单词数组中,以及辅助数组中的段落编号,每当我再次遇到同一个单词时,我添加段落编号到索引。 :
associativeArray={chocolate:[10,30,35,200,50001],parsnips:[5,500,100403]}
这需要很长时间,嗯,5 分钟左右。我尝试将此数组转换为字符串,但它太大了,即使在删除停用词后也无法包含在程序文件中,并且无论如何都需要一段时间才能转换回数组。
除了线性蛮力之外,还有更快的方法来构建文本索引吗?我不是在寻找可以为我做索引的产品,只是最快的已知算法。索引要准确,不模糊,不需要部分搜索。
【问题讨论】:
-
你使用什么语言?
-
以下所有好的答案,在我全部测试之前不确定哪个是最好的。
-
我会选择 Trie 解决方案。
标签: arrays algorithm search text indexing