C++11无序关联容器有哪几种
1、unordered_map
C++11标准引入的unordered_map,是一种无序的关联容器,它由键值对组成,其中键值对的键是唯一的,可以通过键快速查找到值,支持关联式容器的基本操作,如插入、删除、查找等操作。unordered_map支持模板类型,可以使用不同的数据类型作为键值对的键和值。unordered_map是一种hash表,使用hash函数对键进行映射,然后根据映射结果找到键值对,因此查找、插入、删除操作的时间复杂度都是O(1),但是由于hash表可能出现冲突,所以查找效率可能会降低。
2、unordered_multimap
unordered_multimap是unordered_map的一种变体,它也是一种无序的关联容器,它由键值对组成,其中键值对的键可以重复,可以通过键快速查找到值,支持关联式容器的基本操作,如插入、删除、查找等操作。unordered_multimap支持模板类型,可以使用不同的数据类型作为键值对的键和值。unordered_multimap也是一种hash表,使用hash函数对键进行映射,然后根据映射结果找到键值对,因此查找、插入、删除操作的时间复杂度都是O(1),但是由于hash表可能出现冲突,所以查找效率可能会降低。
3、unordered_set
unordered_set是C++11标准引入的一种无序关联容器,它由一组唯一的元素组成,支持关联式容器的基本操作,如插入、删除、查找等操作。unordered_set支持模板类型,可以使用不同的数据类型作为元素。unordered_set也是一种hash表,使用hash函数对元素进行映射,然后根据映射结果找到元素,因此查找、插入、删除操作的时间复杂度都是O(1),但是由于hash表可能出现冲突,所以查找效率可能会降低。
4、unordered_multiset
unordered_multiset是unordered_set的一种变体,它也是一种无序关联容器,它由一组元素组成,其中元素可以重复,支持关联式容器的基本操作,如插入、删除、查找等操作。unordered_multiset支持模板类型,可以使用不同的数据类型作为元素。unordered_multiset也是一种hash表,使用hash函数对元素进行映射,然后根据映射结果找到元素,因此查找、插入、删除操作的时间复杂度都是O(1),但是由于hash表可能出现冲突,所以查找效率可能会降低。
猜您想看
-
如何在 OpenWrt 中使用代理 DHCP?
如何在Open...
2023年04月17日 -
JAVA中int类型数组怎么修改为泛型
1.什么是in...
2023年05月26日 -
油猴脚本安全技巧:使用 CSP 警告 Report-URI 监控安全事件
随着网络技术的...
2023年05月13日 -
如何在手机上关闭GPS功能?
随着科技的发展...
2023年05月03日 -
如何在Steam平台上查找游戏截图?
如何在Stea...
2023年04月17日 -
如何在Docker中使用容器持续交付?
利用Docke...
2023年04月16日