C++标准库容器的通用用例是什么?
例如,地图通常更适合配对搜索。
发布于 2010-10-24 19:55:41
一幅画胜过一千个字。

它可以从##C++在Freenode上提供信息的机器人nolyc中获得,可以使用命令“容器选择”或“容器选择”。您收到的这张图片的链接位于adrinael.net,这意味着我们应该感谢Freenode的##C++社区的成员Adrinael。
发布于 2010-10-24 20:21:06
bitset -用于存储位元。一般用途-存储一些标志的值。你不需要更多的那一点。
deque -双端队列- push_back、push_front、pop_back和pop_front -基本类方法。“未排序”(无序)容器。
list链接列表.这个容器不是内存-连续的。添加和删除元素的时间是O(1),但寻找特定元素的时间是O(n)。无序集装箱。
map -容器,存储对(std::偶对)。第一个是键-映射中的每个元素都必须有唯一的键。映射被表示为树,因此在映射中搜索元素是n*log(n)。这个容器总是被排序的,这就是为什么添加和删除元素会带来更多的时间--树(数据结构)是二进制和平衡的。
multimap -几乎与std::map相同,但允许具有相同密钥的对。例如,multimap可以包含元素:(666,"alabala"),(666,"asdfg"),而标准的std::map不能。
multiset -同样与set相同,但具有可重复的元素。设置-好,这也是始终排序的STL容器。例如,一个集合是{ 1,2,3},当您试图在这个集合中添加'1‘时,它将不会被添加,因为已经有这样的元素了。(它类似于数学的集合)。因此,multiset允许具有相同值的几个元素,例如{ 1、1、1、2、3、4、4、4、4}是正确的多集,而它是而不是a集。在std::set中添加和删除元素仍然是对数时间,因为它被表示为二进制、排序和平衡树。
priority_queue -根据一些严格的弱排序条件,它的第一个元素总是它所包含的最大元素。基本功能- push_back和pop_back。
queue - FIFO结构-先进先出.(或者和LILO一样-最后一次-最后一次出局)。这类似于一个标准的队列--当你去商店开始排队时,第一个会有第一个排队。你只要push_back和pop_front就行了。无序集装箱。
set --我已经在multiset部分中描述过了。
stack - LIFO -最后一次先入先出-堆栈.基本功能- push_back,pop_back。无序集装箱。
vector -模拟一个标准的c++阵列.它被视为常规数组,它的内存-连续,可以传递给一个C程序(传递第一个元素的地址)。无序集装箱。
重要注意事项:我描述了基本功能,而不是整个功能。有关更多信息,请阅读CPlusPlus.com。
https://stackoverflow.com/questions/4010097
复制相似问题