首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >信息检索系统的数据结构/算法

信息检索系统的数据结构/算法
EN

Stack Overflow用户
提问于 2012-05-01 11:31:51
回答 1查看 3K关注 0票数 0

我有一个条件在下面的任务-它是关于Java /数据结构的。我将尽量简短地提出我的问题,因为回答这些问题将帮助我找到方向(因为我迷路了):

  1. 您建议使用的数据结构是什么?
  2. 你会遵循什么算法?(赞赏详细情况)。

简单的信息检索系统,其中查询包含关键字,需要搜索的文档集合。响应查询,系统标识每个包含全部或部分关键字的文档(最多为n个文档),并按关键字的降序打印文档名称,即包含所有关键字的文档应该出现在列表的顶部。

EN

回答 1

Stack Overflow用户

发布于 2012-05-01 11:34:29

首先,您可能正在寻找阿帕奇·卢塞尼,这是一个在java中实现IR系统的开源库!

单独实现某些东西是很困难的,但是IR中最重要的数据结构是倒置指数

倒排索引实际上是一个map:term->list<index>,它在每个术语之间映射到它所显示的文档。倒排索引的优点-是它符合IR标准操作,如连接(和查询)。

在您的具体问题中,从集合构建一个反向索引,一旦k术语的查询到达-获取与这些术语对应的k列表,并得到它们的联合。

现在,一旦您有了联合--剩下的就是创建一个直方图 (每个术语出现多少个列表,可以实现为HashMap) -并按降序打印这些直方图的键。

如果你想扩展你的IR知识,我建议阅读曼宁的信息检索导论

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10397060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档