Extending STL Maps Using LBSTs

Associative containers are basic generic classes of the C++ standard library. Access to the elements can be done by key or iterator, but not by rank. This paper presents a new implementation of the map class, which extends the Standard with the ability to support ecient direct access by rank without using extra space. This is achieved using LBST trees. This document reports on the algorithmic engineering of this implementation as well as, experimental results that show its competitive performance compared to the widespread GCC library map implementation.