测试算法的执行时间(借助Excel的“分列”和“ 排序”功能)

来源:互联网 发布:淘宝开书店 编辑:程序博客网 时间:2024/06/04 18:52

测试算法的执行时间,大家会怎么测试呢?执行100次,100条结果,然后取平均值?或是从中取5条连续的数据然后除以5?

今天介绍两种方法:中位数和平均值,我们主要做SDK,我在移动端做android demo,平时会让测某个函数执行时间,平时用这两种方法。

“中位数”:是从老大那学到的(为毛我之前从前不知道这种方法,我见识少,让我哭会,另外CSDN的表情为毛点击没反应?);

“平均值”:这种方法一开始不愿意用,原因是不太明确怎么用?取多少条数据?从哪个位置开始取?比如取10条,取开头的10条?中间的10条 ?(我们移动组有个测试小姑娘,是从中取5条连续的数据然后除以5),总是感觉这样得出的数据,与真实值之间的差距很大,比如刚好选择的连续5条比其他的高一些或低一些。今天(2016.6.14)我再次遇到此问题时,主动去问我旁边的专业测试人员,他告诉我:求平均值,一般要测试3次,比如每次取500条(第1条~第500条),求这

500条数据的平均值,最后对这3次平均值再次求平均值,最为最终的参考值,这样求出来的数据更接近真实值,更具有参考价值。


方法一:

数据如下(只截取一部分):


04-11 14:57:59.307: I/track106(31196): 算法执行时间:  96 ms
04-11 14:57:59.354: I/track106(31196): 算法执行时间:  12 ms
04-11 14:57:59.425: I/track106(31196): 算法执行时间:  15 ms
04-11 14:57:59.455: I/track106(31196): 算法执行时间:  13 ms
04-11 14:57:59.483: I/track106(31196): 算法执行时间:  14 ms
04-11 14:57:59.523: I/track106(31196): 算法执行时间:  12 ms
04-11 14:57:59.553: I/track106(31196): 算法执行时间:  10 ms
04-11 14:57:59.599: I/track106(31196): 算法执行时间:  22 ms
04-11 14:57:59.623: I/track106(31196): 算法执行时间:  13 ms
04-11 14:57:59.670: I/track106(31196): 算法执行时间:  17 ms
04-11 14:57:59.710: I/track106(31196): 算法执行时间:  28 ms
04-11 14:57:59.734: I/track106(31196): 算法执行时间:  17 ms
04-11 14:57:59.752: I/track106(31196): 算法执行时间:  10 ms
04-11 14:57:59.778: I/track106(31196): 算法执行时间:  12 ms
04-11 14:57:59.811: I/track106(31196): 算法执行时间:  13 ms
04-11 14:57:59.846: I/track106(31196): 算法执行时间:  11 ms
04-11 14:57:59.886: I/track106(31196): 算法执行时间:  15 ms
04-11 14:57:59.918: I/track106(31196): 算法执行时间:  17 ms
04-11 14:57:59.948: I/track106(31196): 算法执行时间:  12 ms
04-11 14:57:59.976: I/track106(31196): 算法执行时间:  9 ms



步1:对此数据排序(从小到大)。借助Excel(Excel有一个“排序”的功能)

 把数据复制到Excel表里



步2:

选中要分列的数据,然后“数据”---》"分列"---》“分隔符号”---》“空格”----》一直下一步就可以了,




:

分列成功,结果如下:



步3:排序:




步4:这里有20条数据,取第10条数据作为最终结果。类似地:如果有100条数据,选择第50条作为最终结果。




这种方法是我们主管用的方法,至于其中的原理我还没想明白,有知道的小伙伴要给我留言哦,多谢!


方法二:

借助execl的"分列"、"平均值"功能

“分列”参照“方法一”;

“平均值”:选中数据,右键“自动求和”的下拉列表里有一个“平均值”,注意:如果是多500条甚至更多的数据求平均值,一定要选中这500条,不要选中整列,选中整列的做法不对(与只选中500条的结果不一样),所以不要多选,只选要求操作数据所在位置





0 0
原创粉丝点击