词组统计大致思路(软工个人作业一)

(欢迎大家提建议)

昨天(3.25)下午顺利的完成了单词统计功能,晚上开始进行词组统计。
一开始的思路很直接粗暴,每个单词所在的结构体定义一个映射了整个词表的整型二维数组。
我太天真了,这样做需要申请至少3GB的内存空间!当然,我是在调试了一个晚上加一个上午之后才发现的。

那就换一下思路,只存储下一个单词的信息?这样既要储存单词的字符串,又要进行串比较,好像还是有点麻烦!

既然每个单词的存储位置是不同的,那就说明单词的指针可以唯一的代表一个单词,不如直接存储下一个单词的指针并对指针进行统计?

对!就这样做!

存储单词
返回当前单词在词表中的位置
如果不是第一个单词
   根据位置得到字符串指针
   在前一个单词的nextWordInfo中查找是否存在该指针
   如果存在 该指针对应计数加一
   如果不存在 存储该指针,初始化数量为1
记录该位置

最后遍历即可得到所有词组出现频率

原文地址:https://www.cnblogs.com/ustckx16/p/8650156.html