个人项目

博客开头给出了个人信息

  • 学号2018*****7124
  • 姓名:武超

博客开头给出了代码仓库的地址

https://gitee.com/wuchao124/team-6-1566462

给出你的各项任务完成时间估算与实际消耗时间表。

 

PSP个人流程

我的估计

实际情况

• 代码规范

10分钟

15分钟

• 代码

2天

3

• 测试(包括自测,修改代码,提交修改)

4小时

3小时

记录用时

10分钟

10分钟

时间总结

24小时20分钟

33小时25分钟

 

 

设计程序的思路。

  1. 统计文件有多少个字符,包括空格制表符换行符等。
  2. 统计文件的有效行数,含非空白字符的行的数量,也就是跳过 空行 的行数。
  3. 统计单词的总数,本题中“单词”的定义是:
  1. 4个英文字母 A-Za-z 开头,后续可以是字母和数字A-Za-z0-9good123是一个单词,123good不是一个单词。(换言之,如果有一行内容是123good,那么“单词”是good。)
  2. 分割符是非字母数字符号,空格。
  3. 不区分大小写,例如fileFILE是同一个单词。
  4. 统计文件中各单词的出现次数,然后输出频率最高的10个,单词定义同上,按照如下格式输出:频率相同的单词,优先输出字典序靠前的单词。

          统计文件的字符数:难度系数较低,在不考虑汉字的情况下,只需要记录读入字符的数量即可。
        -** 统计文件的有效行数:**初步设想有效行只需判断该行有非空字符,且以换行符结尾或者文件结尾。

     统计文件的单词总数:

  • 要求单词至少以4个英文字母开头,跟上字母数字符号,单词以分隔符分割,不区分大小写。只需要连续确定4个英文字符后,再遇上分割符确定一个单词,然后记录即可。
  • 分割符的定义是非字母数字符号,例如@#%……&*还有空格、转义字符、换行符。

统计文件中各单词的出现次数:把每个单词记录下来,出现相同单词的时候对应的值增加1。并且由于单词不区分大小写,在记录单词前必须将其转换成小写字母(输出的单词统一为小写格式)。由于采用map容器,输出即可按照字典序。

单元测试的思路。

生成测试类

断点检查错误

单行运行断点

检查bug

回归测试

给出你的效能分析报告。

  1. 统计概要

 


2.CPU运行曲线:

 

3.内存占用情况:char数组占用较大,其原因也是读入文件进行处理必须的。String和lang.Objectlang.Sting等也是创建了比较多的实例,如果可以的话可以尝试减少实例化数量

 

 

 

4.函数运行时间和调用次数统计.

 

 

 

5.详细一些的高占比时间的函数运行统计排序,其他高占比函数也包括字符串处理函数。

 

代码片段

 

原文地址:https://www.cnblogs.com/wuchao124/p/13789082.html