|File Search||Catalog||Content Search|
- sports an unlimited number of dimensions (in theory) - can store any data structure, provided the data structure provides operator[0 - k-1] to access the individual dimensional components (arrays, std::vector already do) and a std::less implementation for the type of dimensional components - has support for custom allocators - implements iterators - provides standard find as well as range queries - has amortised O(lg n) time (O(n lg n) worst case) on most operations (insert/erase/find optimised) and worst-case O(n) space. - provides a means to rebalance and thus optimise the tree. - exists in its own namespace - uses STL coding style, basing a lot of the code on stl_tree.h
Note that the library is not (yet) complete and it's not thoroughly tested. However, given the effort and grief I went through in writing it, I would like to make it available to folks, get people to test it, and hopefully have some peeps submit improvements.
It's not yet documented, although the usage should be fairly straight forward. I am hoping to find someone else to document it as I suck at documentation and as the author, it's exceptionally difficult to stay didactically correct.
libkdtree++ only exists as a -dev package as it's only a bunch of C++ header files. Therefore, no static or shared library is necessary, allowing for ultimate flexibility.
libkdtree++ README ================== libkdtree++ is (c) 2004-2007 Martin F. Krafft <email@example.com> and distributed under the terms of the Artistic License 2.0. See the file LICENSE in the source distribution for more information. Please send bugreports to <firstname.lastname@example.org>. Introduction ------------ libkdtree++ is a C++ template container implementation o more»
libkdtree++ NEWS ================ 29 Sep 2007: Sylvain Bougerel spent some time cleaning up the code and build infrastructure of the code from Sourceforge, and I imported the results of his work to a git repository on git.debian.org today. http://git.debian.org/?p=libkdtree/libkdtree.git;a=summary Martin F. Krafft <email@example.com>
libkdtree++ (0.6.2-1) unstable; urgency=low * New upstream version (closes: Bug#459106) * New maintainer -- Martin Schreiber <firstname.lastname@example.org> Fri, 08 Feb 2008 22:52:21 +0100 libkdtree++ (0.2.0-1) unstable; urgency=low * New upstream version, thanks to Paul Harris. * Closes bugs from 0.1.3-1, which was not officially uploaded to Debian (closes: Bug#279614, Bug#279620). -- more»
libkdtree++ TODO list ===================== - DOCUMENTATION - automated unit testing - performance more»
"The Artistic Licence 2.0" Copyright (c) 2000-2006, The Perl Foundation. http://www.perlfoundation.o more»