在文档中找到的单词索引 - Java

时间:2013-09-20 19:45:44

标签: java indexing inverted-index

我正在尝试编写一个程序,它接受一个文本文件作为输入,检索单词,并输出每个单词与它们所在的每个行号。我在这个项目中遇到了很多麻烦,尽管我已经取得了一些进展......

到目前为止,我有一个ArrayList,其中包含文档中找到的所有单词,没有标点符号。我可以输出这个列表并查看文本文件中的所有单词,但我不知道从哪里开始......有什么想法吗?

示例:

myList = [A, ACTUALLY, ALMOST,....]

我需要以某种方式将每个单词与它们来自哪一行相关联,这样我就可以填充一个数据结构,该结构将每个单词及其相关的行号保存。

我是编程新手所以我不熟悉所有类型的数据结构和算法...我的教师建议我使用动态多链接列表但我不知道如何实现那些经文ArrayLists和数组。

任何想法都将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:3)

您应该使用哈希表。哈希表是键/值对。键可以是文本文件中的每个单词,值,包含行号的数组列表。

基本上,遍历文本文件中的每个单词。如果该单词不在您的单词列表中,请将其作为键和行号作为列表中的值添加到哈希表中。如果该单词已在表中,请将行号附加到数组列表中。

Java在哈希表here

上有很好的文档

为您提供所需的方法。