题目:写一个程序,分析一个文本文件中各个词出现的频率,并且把频率最高的10个词打印出来,文本文件大约是30KB~300KB大小。
本文采用C语言,以windows32系统下的Microsoft Visual C++ 6.0为运行环境。
步骤:
1.定义头文件及结构体
2.统计单词频率
3.用冒泡排序法比较各单词出现频率,并打印频率最高的十个单词
4.测试文件及结果
5.感想
本文采用C语言,用了比较简单、我们熟悉的算法实现了单词频率的统计以及排序,但是我最初的想法是采用哈希算法来实现,给文本中的每个单词赋一个哈希值,然后对文本内容进行读入,同一个单词每出现一次就累计加1,最后再来将出现的次数做排序。这种算法原理与上面的其实大同小异,只是简化了统计的过程,貌似在别的地方也出现过哈希算法实现的频率统计,但由于本人编程能力有限,所以没能亲手实现,有兴趣的亲们可以亲自动手操作一下!