I know that the STL containers like set and map are sorted but how are they actually sorted? What is the underlying structure?
I couldn't find any books about it.
I'm a C++ beginner please don't judge me. :)
I know that the STL containers like set and map are sorted but how are they actually sorted? What is the underlying structure?
I couldn't find any books about it.
I'm a C++ beginner please don't judge me. :)
 
    
    For both std::map and std::set, it is implementation defined how the sorting is being done. The underlying data structure should sort the elements somehow:
Internally, the elements in a
mapare always sorted by its key following a specific strict weak ordering criterion indicated by its internal comparison object (of type Compare).
(same holds for set.)
A typical data structure for these containers is red black tree or a binary search tree.
