We present a new multi-dimensional data structure, which we call the skip quadtree (for point data in R 2 ) or the skip octree (for point data in R d , with constant d > 2). Our data structure combines the best features of two well-known data structures, in that it has the well-defined "box"-shaped regions of region quadtrees and the logarithmic-height search and update hierarchical structure of skip lists. Indeed, the bottom level of our structure is exactly a region quadtree (or octree for higher dimensional data). We describe efficient algorithms for inserting and deleting points in a skip quadtree, as well as fast methods for performing point location, approximate range, and approximate nearest neighbor queries.
['David Eppstein', 'Michael T. Goodrich', 'Jonathan Z. Sun']
The skip quadtree: a simple dynamic data structure for multidimensional data