把文本里的内容保存为数组,用于记录每个词组的位置

图片说明


这是文本里内容的格式,已经分过词,去掉了停用词,计算了词组的权重,现在想将这些词在文本的位置存在一个数组中,相当于建立一个VSM空间模型,最后用于聚类分析。


注意,有很多这样的文本,如图:


图片说明


要把所有的文本里的词组的位置记录下来。每一个文本代表一个用户。还有我不知道是建立一维数组好还是二维数组好一些。或者说是用Map这样的类型
希望大神能贴出代码来

用Map也可以,用二维数组也可以。
无非就是split放入数组,然后用一个整数变量,循环,将这个变量和每一个词语配对,存入你的结果表。

用map存储数据吧.

  1. 创建文本对象 po (user), 遍历 文本.

    for(){
    User u= new User();
    2. 创建用户的po 对象 . 用以存储文本内容信息.

    private List info = new ArrayList();
    u.setPo(info);
    3.之后进行储存到map集合中.
    mao.put("文本名称",u);
    }

    有什么还不懂的接着问吧. 
    

首先词组很多,可以用hash字典设计,这样查找每个词组会很快。
其次,每个词组可能会出现多次,即多个 {文件、位置}的组合。只需在该词组下面挂{文件、位置}链表即可。

两种数据结构
1,词组的hash字典
2,{文件、位置}pool。