Search results
Results from the WOW.Com Content Network
In the programming language C++, unordered associative containers are a group of class templates in the C++ Standard Library that implement hash table variants. Being templates , they can be used to store arbitrary elements, such as integers or custom classes.
similar to a set, multiset, map, or multimap, respectively, but implemented using a hash table; keys are not ordered, but a hash function must exist for the key type. These types were left out of the C++ standard; similar containers were standardized in C++11, but with different names (unordered_set and unordered_map). Other types of containers ...
<unordered_map> Added in C++11 and TR1. Provides the container class template std::unordered_map and std::unordered_multimap, hash tables. <unordered_set> Added in C++11 and TR1. Provides the container class template std::unordered_set and std::unordered_multiset. <vector> Provides the container class template std::vector, a dynamic array.
In C++, the Standard Template Library (STL) provides the set template class, which is typically implemented using a binary search tree (e.g. red–black tree); SGI's STL also provides the hash_set template class, which implements a set using a hash table. C++11 has support for the unordered_set template class, which is implemented using a hash ...
Some collections maintain a linear ordering of items – with access to one or both ends. The data structure implementing such a collection need not be linear. For example, a priority queue is often implemented as a heap, which is a kind of tree. Notable linear collections include: list; stack; queue; priority queue; double-ended queue
Key uniqueness: in map and set each key must be unique. multimap and multiset do not have this restriction. Element composition: in map and multimap each element is composed from a key and a mapped value. In set and multiset each element is key; there are no mapped values. Element ordering: elements follow a strict weak ordering [1]
This page was last edited on 6 December 2011, at 12:57 (UTC).; Text is available under the Creative Commons Attribution-ShareAlike 4.0 License; additional terms may apply.
This has the advantage of low-overhead polymorphism, since templates are a compile-time construct which modern C++ compilers can largely optimize away. oneTBB is available commercially as a binary distribution with support, [ 4 ] and as open-source software in both source and binary forms.