SKIP QUADTREES: DYNAMIC DATA STRUCTURES FOR MULTIDIMENSIONAL POINT SETS

2008 ◽  
Vol 18 (01n02) ◽  
pp. 131-160 ◽  
Author(s):  
DAVID EPPSTEIN ◽  
MICHAEL T. GOODRICH ◽  
JONATHAN Z. SUN

We present a new multi-dimensional data structure, which we call the skip quadtree (for point data in R2) or the skip octree (for point data in Rd, 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.

2011 ◽  
Vol 21 (02) ◽  
pp. 179-188 ◽  
Author(s):  
OTFRIED CHEONG ◽  
ANTOINE VIGNERON ◽  
JUYOUNG YON

Reverse nearest neighbor queries are defined as follows: Given an input point set P, and a query point q, find all the points p in P whose nearest point in P ∪ {q} \ {p} is q. We give a data structure to answer reverse nearest neighbor queries in fixed-dimensional Euclidean space. Our data structure uses O(n) space, its preprocessing time is O(n log n), and its query time is O( log n).


2002 ◽  
Vol 13 (02) ◽  
pp. 163-180 ◽  
Author(s):  
OLIVIER DEVILLERS

We propose a new data structure to compute the Delaunay triangulation of a set of points in the plane. It combines good worst case complexity, fast behavior on real data, small memory occupation and the possibility of fully dynamic insertions and deletions. The location structure is organized into several levels. The lowest level just consists of the triangulation, then each level contains the triangulation of a small sample of the level below. Point location is done by walking in a triangulation to determine the nearest neighbor of the query at that level, then the walk restarts from the neighbor at the level below. Using a small subset (3%) to sample a level allows a small memory occupation; the walk and the use of the nearest neighbor to change levels quickly locate the query.


2019 ◽  
Vol 29 (03) ◽  
pp. 189-218
Author(s):  
Haitao Wang ◽  
Wuzhou Zhang

In this paper, we study top-[Formula: see text] aggregate (or group) nearest neighbor queries using the weighted Sum operator under the [Formula: see text] metric in the plane. Given a set [Formula: see text] of [Formula: see text] points, for any query consisting of a set [Formula: see text] of [Formula: see text] weighted points and an integer [Formula: see text], [Formula: see text], the top-[Formula: see text] aggregate nearest neighbor query asks for the [Formula: see text] points of [Formula: see text] whose aggregate distances to [Formula: see text] are the smallest, where the aggregate distance of each point [Formula: see text] of [Formula: see text] to [Formula: see text] is the sum of the weighted distances from [Formula: see text] to all points of [Formula: see text]. We build an [Formula: see text]-size data structure in [Formula: see text] time, such that each top-[Formula: see text] query can be answered in [Formula: see text] time. We also obtain other results with trade-off between preprocessing and query. Even for the special case where [Formula: see text], our results are better than the previously best work, which requires [Formula: see text] preprocessing time, [Formula: see text] space, and [Formula: see text] query time. In addition, for the one-dimensional version of this problem, our approach can build an [Formula: see text]-size data structure in [Formula: see text] time that can support [Formula: see text] time queries. Further, we extend our techniques to answer the top-[Formula: see text] aggregate farthest neighbor queries, with the same bounds.


1994 ◽  
Vol 1 (16) ◽  
Author(s):  
Lars Arge

In this paper we develop a technique for transforming an internal memory datastructure into an external storage data structure suitable for plane-sweep algorithms. We use this technique to develop external storage versions of the range tree and the segment tree. We also obtain an external priority queue. Using the first two structures, we solve the orthogonal segment intersection, the isothetic rectangle intersection, and the batched range searching problem in the optimal number of I/O-operations. Unlike previously known I/O-algorithms the developed algorithms are straightforward generalizations of the ordinary internal memory plane-sweep algorithms. Previously almost no dynamic data structures were known for the model we are working in.


2016 ◽  
Vol 2 ◽  
pp. e95
Author(s):  
Joss Whittle ◽  
Rita Borgo ◽  
Mark W. Jones

In this paper, we introduce a framework for implementing deep copy on top of MPI. The process is initiated by passing just the root object of the dynamic data structure. Our framework takes care of all pointer traversal, communication, copying and reconstruction on receiving nodes. The benefit of our approach is that MPI users can deep copy complex dynamic data structures without the need to write bespoke communication or serialize/deserialize methods for each object. These methods can present a challenging implementation problem that can quickly become unwieldy to maintain when working with complex structured data. This paper demonstrates our generic implementation, which encapsulates both approaches. We analyze the approach with a variety of structures (trees, graphs (including complete graphs) and rings) and demonstrate that it performs comparably to hand written implementations, using a vastly simplified programming interface. We make the source code available completely as a convenient header file.


2020 ◽  
Vol 10 (1) ◽  
pp. 25-47
Author(s):  
Poonam Goyal ◽  
Jagat Sesh Challa ◽  
Dhruv Kumar ◽  
Anuvind Bhat ◽  
Sundar Balasubramaniam ◽  
...  

1992 ◽  
Vol 02 (03) ◽  
pp. 311-333 ◽  
Author(s):  
YI-JEN CHIANG ◽  
ROBERTO TAMASSIA

We present a fully dynamic data structure for point location in a monotone subdivision, based on the trapezoid method. The operations supported are insertion and deletion of vertices and edges, and horizontal translation of vertices. Let n be the current number of vertices of the subdivision. Point location queries take O( log n) time, while updates take O ( log 2 n) time (amortized for vertex insertion/deletion and worst-case for the other updates). The space requirement is O(n log n). This is the first fully dynamic point location data structure for monotone subdivisions that achieves optimal query time.


2010 ◽  
Vol 33 (8) ◽  
pp. 1396-1404 ◽  
Author(s):  
Liang ZHAO ◽  
Luo CHEN ◽  
Ning JING ◽  
Wei LIAO

Sign in / Sign up

Export Citation Format

Share Document