Do you know if some kind of documentation for algorithm and data structure exists?
I mean, for example, does exists a documentation reporting that the "map" structure is implemented by a balanced tree? e so on for other algorithm/data structure.
I mean, for example, does exists a documentation reporting that the "map" structure is implemented by a balanced tree?
As keskiverto said, the C++ standard describes how data structures (the containers) should behave. Then the implementers have freedom to do whatever they want internally, as long as the external behavior is respected.
But now... a doubt is arising in my head... what is STL?
I thought the STL was a kind of standard in the implementation too, instead i'm getting that there are several different implementation of such standard.
Android, Apple, and Windows phone users can call each other. Different phones, but an agreed standard on how they communicate. Standard defines an interface.
STL is Standard Template Library. There are non-template bits in libraries too. The C++ standard describes what its library must have. Different vendors are free to provide their own version, particularly when they have a special platform or business model.
STL is a cool guy who works for Microsoft and maintains their C++ standard library.
STL was a general-purpose library for C++ developed at HP, moved to SGI when HP dropped financing, and abandoned over a decade ago (its website still remains, and was linked to earlier in this thread).
STL is an informal name sometimes used to describe the parts of the C++ standard that were originally inspired by parts of the STL (the HP/SGI library).