内容简介:性能最差的是map、multimap、set和multiset这两簇。其他容器性能差距不大。非关联容器中,list的性能最差。
遍历
从前往后
性能最差的是map、multimap、set和multiset这两簇。
其他容器性能差距不大。
非关联容器中,list的性能最差。
从后往前
支持从后向前遍历的容器并不多,只有:vector、deque、list、set、map、multiset和multimap。
元素个数>15000
非关联容器的性能要优于关联容器。
非关联容器之间相比,性能差距不大。
在12500个元素之前,vector的效率要比list和deque低,但是之后vector是最优的。
元素个数<4096
vector在初期会有高耗时操作,之后性能优秀(通过斜率)。
结论:
除了map、multimap、set和multiset,其他容器的遍历性能都差不了太多。
查找
因为非关联容器的查找只能通过遍历,其效率和关联容器的查找没法比。所以我们只比较关联容器。
元素个数>15000
set类要优于对应的map类容器。即set优于map;multiset优于multimap;unordered_set优于unordered_map;unordered_multiset优于unordered_multimap。
multi类要优于对应的非multi类容器。即multimap优于map;multiset优于set;unordered_multimap优于unordered_map;unordered_multiset优于unordered_set。
无序关联容器要优于有序关联容器。
文中图例可从如下地址获取: https://github.com/f304646673/stl_perf/tree/master/windows
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 二叉查找树的增加,删除,遍历 python
- C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——删除
- 图解:单链表删除,不遍历链表也能做(时间复杂度O(1))
- C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——插入
- 数组常见的遍历循环方法、数组的循环遍历的效率对比
- Js遍历数组总结
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
XML Hacks
Michael Fitzgerald / O'Reilly Media, Inc. / 2004-07-27 / USD 24.95
Developers and system administrators alike are uncovering the true power of XML, the Extensible Markup Language that enables data to be sent over the Internet from one computer platform to another or ......一起来看看 《XML Hacks》 这本书的介绍吧!