软件工程作业:项目1--文本词频统计

要求:

写一个程序,分析一个文本文件中各个词出现的频率,并且把频率最高的10个词打印出来。文本文件大约是30KB~300KB大小。

本程序使用java编写,对中英文文本分词后用hashmap存储键值,然后对其排序输出前10个高频词。

程序主界面:

图一

通过下拉菜单“菜单”中打开文件的选项,选择需要打开分析的文件:

图二

程序会自动根据文本内容识别中英文,按下“统计”按钮后分析统计,在右侧显示结果:

图三

中文文本采用中科院的ICTCLAS进行分词,并滤去单个汉字及标点符号后进行统计,结果如下:

图四

点击“重置”会恢复到主界面(图一),然后再选择需要分析的文本,也可以直接在菜单中选择“退出”,退出程序。

用MS的visual studio2013的WPR记录CPU使用,并用WPA分析程序。

图五

javaw.exe应是我们要分析的程序:

图六

 

图七

不知道为什么,按照网上教程,并没有显示函数名以及堆栈具体内容,有待探索!

 

 

课外补充:

http://blog.csdn.net/chengyingzhilian/article/details/8197987

用到一种很巧妙的数据结构——单词树,优化了程序效率。

http://bigasp.com/archives/606

WPA、WPR用法

 

本人信息:

班级:0491101

学号:2011212007

 

posted on 2014-03-16 23:29  山中计公  阅读(265)  评论(0编辑  收藏  举报

导航