A Self-adjusting Data Structure for Multidimensional Point Sets [chapter]

Eunhui Park, David M. Mount
2012 Lecture Notes in Computer Science  
A data structure is said to be self-adjusting if it dynamically reorganizes itself to adapt to the pattern of accesses. Efficiency is typically measured in terms of amortized complexity, that is, the average running time of an access over an arbitrary sequence of accesses. The best known example of such a data structure is Sleator and Tarjan's splay tree. In this paper, we introduce a self-adjusting data structure for storing multidimensional point data. The data structure is based on a
more » ... -like subdivision of space. Like a quadtree, the data structure implicitly encodes a subdivision of space into cells of constant combinatorial complexity. Each cell is either a quadtree box or the set-theoretic difference of two such boxes. Similar to the traditional splay tree, accesses are based on an splaying operation that restructures the tree in order to bring an arbitrary internal node to the root of the tree. We show that many of the properties enjoyed by traditional splay trees can be generalized to this multidimensional version.
doi:10.1007/978-3-642-33090-2_67 fatcat:ex3ixuoc4ba7jhvmzmndegpxz4