Do you need a container for (A) random access? Then you need a vector, but don't abuse insert/erase; (B) insert/erase (wherever you want)? Then you need a list, but don't even try random access; (C) both? Choose avl_array! O(log n) for both!
Be the first to post a text review of AVL Array. Rate and review a project by clicking thumbs up or thumbs down in the right column.
* documentation * source reorganized for readability * compliance with higher standards * performance improvements (See README.TXT for details)
* documentation * source reorganized for readability * compliance with higher standards * performance improvements (See README.TXT for details)
* improved portability * no macros * namespaces * allocators * new experimental feature "Non-Proportional Sequence View" allows indexing with something different from natural numbers, but with the same working principle: insertion, deletion, or width-change (that's new) of an element automatically changes the position of others
Initial version for C++ with: * random access of O(log n) complexity * insert/erase (wherever you want) of O(log n) complexity * O(1) for ++ and -- on iterators, begin() and end() * swap, reverse, sort and stable sort * merge, unique and binary search for data in order * iterators remain valid until referenced element is erased (reverse iterators too) * O(n) copy constructor, operator= * additional specialized operations like insert_anywhere
Initial version for C++ with: * random access of O(log n) complexity * insert/erase (wherever you want) of O(log n) complexity * O(1) for ++ and -- on iterators, begin() and end() * swap, reverse, sort and stable sort * merge, unique and binary search for data in order * iterators remain valid until referenced element is erased (reverse iterators too) * O(n) copy constructor, operator= * additional specialized operations like insert_anywhere
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?