温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C++11无序关联容器有哪几种

发布时间:2021-11-29 13:43:28 来源:亿速云 阅读:144 作者:iii 栏目:大数据

这篇文章主要讲解了“C++11无序关联容器有哪几种”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++11无序关联容器有哪几种”吧!

在C++11之前的关联容器一共有四种。

首先是两种最基本的类型:map和set。map中保存的是关键字-值的组合,而set中只保存关键字。

map和set中的关键字不允许重复,一旦相同的关键字重新写入,则原来的内容被覆盖。如果希望关键字可以重复,可以使用multimap和multiset。

用图表表示就是下面这样。

C++11无序关联容器有哪几种

由于这些关联容器的存储位置是根据比较运算符决定的,所以也成为有序关联容器。

无序关联容器

C++11另外引入了4种无序关联容器(unordered associative container)。这些容器将存储组织为一组桶,根据哈希值将数据映射到桶。与有序关联容器类似,无序关联容器也可以用同样的标准分类:

C++11无序关联容器有哪几种

除了哈希管理操作以外,无序容器还提供了与有序容器相同的操作。也就是说有序容器和无序容器可以互换。

无序容器的优势

用一句话概括,就是通常情况下,无序容器通常会有更好的性能。下面用一段程序来确认这个结论。

C++11无序关联容器有哪几种

从实际的结果来看,使用无序关联容器时的操作时间不到使用有序关联容器时的一半。

感谢各位的阅读,以上就是“C++11无序关联容器有哪几种”的内容了,经过本文的学习后,相信大家对C++11无序关联容器有哪几种这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c++
AI