你的STL实现得有多烂?How suck your STL implemented?

来源:互联网 发布:显卡帧数测试软件 编辑:程序博客网 时间:2024/05/21 00:55
我在vc7中做了一个测试,插入50万条随机生成的记录到hash_map<string,int>中,结果令我大吃一惊。
随机字符串生成:字符串长度为1-12个小写字母,50万次,大概只有34万条不重复记录。

  vc7 STL stlport 4.62 前25万条记录 350ms/条 200ms/万条 后25万条记录 进程没有反应 200ms/万条
查询速度也有较大的差异,VC7 STL最差的命中查询在10ms。

VC7自带的stl的效率差得让人吃惊。并且hash_map::resize等方法也没有提供,在记录超过75%时hash表的效率一般会降低,这样用户就没有办法显示避免这个问题了。

原创粉丝点击