关于map的count和find的效率以及空类调用效率(一)

来源:互联网 发布:安卓源码查看 编辑:程序博客网 时间:2024/06/05 04:38

 前两天为了写敏感词过滤,用了multimap数据结构来存敏感词,结果发现效率上面其实不是很理想。

    后来简单测了一下,发现主要是multimap的find和count的效率是相当的低,(一直以为对于map来说,find和count的效率应该不错的)。数据大致如下:

         对于9833bytes目标数据,681条样本数据的map,进行6678400次循环,count大约耗时1.7秒,find大约耗时2.8秒。上面的数据是在AMD Athlon 64*2 Dual 5000+ 2.6Hz的cpu情况下进行的计算。具体的数据结构不好,看样子下次等看一下stl之后,看看能不能重写map的实现了。

 

又定义了A,B,C三个依次派生的类,测得一个虚函数调用(只有一层继承关系的)大约耗时0.3125微妙。这个效率其实很高,耗时还是相当的低了,至少可以满足要求。