STL AVL Map is an implementation of AVL-tree-based map, multimap, set and multiset containers for g++ 4.1.1.
Almost everything on this library is based on libstdc++ v3 code, so the same license applies. The AVL operations (in lib/tree.cpp) were written by Daniel Khler Osmari, and are under the same license as libstdc++.
This is supposed to be a drop-in replacement for the red-black tree provided by libstdc++. The package also provides the original RB-tree (in the tests directory) to allow a fair comparision; it also builds a library, libavlmap.a that you can use side by side with the standard implementation.
This is an example of code using it:
#include < algorithm >
#include < iostream >
#include < iterator >
#include < avl/set.h >
int main()
{
avl::set my_set;
my_set.insert(5);
avl::multiset my_mset;
my_mset.insert(2);
my_mset.insert(3);
my_mset.insert(2);
/* Now it should print:
2
2
3
*/
std::copy(my_mset.begin(), my_mset.end(), std::ostream_iterator(std::cout, "n"));
}
Note that the set, multiset, map and multimap containers are defined in the "avl" namespace.
What's New in This Release:
· Updated license to GPLv3.
· Updated code to match GCC 4.3.1.
Product's homepage