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表可能出现冲突,所以查找效率可能会降低。
猜您想看
-
怎么用Python做一个Telegram的新闻Bot
一、准备工作在...
2023年07月22日 -
正则表达式中正向预查和负向预查的示例分析
正则表达式中的...
2023年07月20日 -
电脑中常常出现异常音频怎么办?
如何解决电脑中...
2023年05月03日 -
如何使用OpenZeppelin在RSK上进行ERC20开发
1.什么是Op...
2023年05月23日 -
如何在Docker中部署Go应用程序?
使用Do...
2023年04月16日 -
如何使用正则表达式匹配[***]样式的字符串
一、正则表达式...
2023年05月26日