Results 1  10
of
21
Range Searching
, 1996
"... Range searching is one of the central problems in computational geometry, because it arises in many applications and a wide variety of geometric problems can be formulated as a rangesearching problem. A typical rangesearching problem has the following form. Let S be a set of n points in R d , an ..."
Abstract

Cited by 70 (1 self)
 Add to MetaCart
Range searching is one of the central problems in computational geometry, because it arises in many applications and a wide variety of geometric problems can be formulated as a rangesearching problem. A typical rangesearching problem has the following form. Let S be a set of n points in R d , and let R be a family of subsets; elements of R are called ranges . We wish to preprocess S into a data structure so that for a query range R, the points in S " R can be reported or counted efficiently. Typical examples of ranges include rectangles, halfspaces, simplices, and balls. If we are only interested in answering a single query, it can be done in linear time, using linear space, by simply checking for each point p 2 S whether p lies in the query range.
Proximity Problems on Moving Points
 In Proc. 13th Annu. ACM Sympos. Comput. Geom
, 1997
"... A kinetic data structure for the maintenance of a multidimensional range search tree is introduced. This structure is used as a building block to obtain kinetic data structures for two classical geometric proximity problems in arbitrary dimensions: the first structure maintains the closest pair o ..."
Abstract

Cited by 50 (15 self)
 Add to MetaCart
A kinetic data structure for the maintenance of a multidimensional range search tree is introduced. This structure is used as a building block to obtain kinetic data structures for two classical geometric proximity problems in arbitrary dimensions: the first structure maintains the closest pair of a set of continuously moving points, and is provably e#cient. The second structure maintains a spanning tree of the moving points whose cost remains within some prescribed factor of the minimum spanning tree. The method for maintaining the closest pair of points can be extended to the maintenance of closest pair of other distance functions which allows us to maintain the closest pair of a set of moving objects with similar sizes and of a set of points on a smooth manifold.
Faster Deterministic Sorting and Searching in Linear Space
, 1995
"... We present a significant improvement on linear space deterministic sorting and searching. On a unitcost RAM with word size w, an ordered set of n wbit keys (viewed as binary strings or integers) can be maintained in O ` min ` p log n; log n log w + log log n; log w log log n " time per op ..."
Abstract

Cited by 39 (7 self)
 Add to MetaCart
We present a significant improvement on linear space deterministic sorting and searching. On a unitcost RAM with word size w, an ordered set of n wbit keys (viewed as binary strings or integers) can be maintained in O ` min ` p log n; log n log w + log log n; log w log log n " time per operation, including insert, delete, member search, and neighbour search. The cost for searching is worstcase while the cost for updates is amortized. For range queries, there is an additional cost of reporting the found keys. As an application, n keys can be sorted in linear space at a worstcase cost of O \Gamma n p log n \Delta . The best previous method for deterministic sorting and searching in linear space has been the fusion trees which supports queries in O(logn= log log n) amortized time and sorting in O(n log n= log log n) worstcase time. We also make two minor observations on adapting our data structure to the input distribution and on the complexity of perfect hashing. 1 I...
Implementing I/OEfficient Data Structures Using TPIE
 In Proc. European Symposium on Algorithms
, 2002
"... In recent years, many theoretically I/Oefficient algorithms and data structures have been developed. The TPIE project at Duke University was started to investigate the practical importance of these theoretical results. The goal of this ongoing project is to provide a portable, extensible, flexib ..."
Abstract

Cited by 32 (6 self)
 Add to MetaCart
In recent years, many theoretically I/Oefficient algorithms and data structures have been developed. The TPIE project at Duke University was started to investigate the practical importance of these theoretical results. The goal of this ongoing project is to provide a portable, extensible, flexible, and easy to use C++ programming environment for efficiently implementing I/Oalgorithms and data structures. The TPIE library has been developed in two phases. The first phase focused on supporting algorithms with a sequential I/O pattern, while the recently developed second phase has focused on supporting online I/Oefficient data structures, which exhibit a more random I/O pattern. This paper describes the design and implementation of the second phase of TPIE.
Bkdtree: A dynamic scalable kdtree
 In Proc. International Symposium on Spatial and Temporal Databases
, 2003
"... ..."
A Framework for Index Bulk Loading and Dynamization
, 2001
"... In this paper we investigate automated methods for externalizing internal memory data structures. We consider a class of balanced trees that we call weightbalanced partitioning trees (or wptrees) for indexing a set of points in R d . Wellknown examples of wptrees include kd trees, BBDtre ..."
Abstract

Cited by 22 (14 self)
 Add to MetaCart
In this paper we investigate automated methods for externalizing internal memory data structures. We consider a class of balanced trees that we call weightbalanced partitioning trees (or wptrees) for indexing a set of points in R d . Wellknown examples of wptrees include kd trees, BBDtrees, pseudoquadtrees, and BARtrees. Given an efficient external wptree construction algorithm, we present a general framework for automatically obtaining a dynamic external data structure. Using this framework together with a new general construction (bulk loading) technique of independent interest, we obtain data structures with guaranteed good update performance in terms of I/O transfers. Our approach gives considerably improved construction and update I/O bounds for e.g. external kdtrees and BBDtrees.
Kinetic Medians and kdTrees
, 2002
"... We propose algorithms for maintaining two variants of kd trees of a set of moving points in the plane. A pseudo kdtree allows the number of points stored in the two children to di#er by a constant factor. ..."
Abstract

Cited by 22 (8 self)
 Add to MetaCart
We propose algorithms for maintaining two variants of kd trees of a set of moving points in the plane. A pseudo kdtree allows the number of points stored in the two children to di#er by a constant factor.
Improving Partial Rebuilding by Using Simple Balance Criteria
"... Some new classes of balanced trees, defined by very simple balance criteria, are introduced. Those trees can be maintained by partial rebuilding at lower update cost than previously used weightbalanced trees. The used balance criteria also allow us to maintain a balanced tree without any balance in ..."
Abstract

Cited by 21 (4 self)
 Add to MetaCart
Some new classes of balanced trees, defined by very simple balance criteria, are introduced. Those trees can be maintained by partial rebuilding at lower update cost than previously used weightbalanced trees. The used balance criteria also allow us to maintain a balanced tree without any balance information stored in the nodes.
General balanced trees
 Journal of Algorithms
, 1999
"... We show that, in order to achieve efficient maintenance of a balanced binary search tree, no shape restriction other than a logarithmic height is required. The obtained class of trees, general balanced trees, may be maintained at a logarithmic amortized cost with no balance information stored in the ..."
Abstract

Cited by 19 (0 self)
 Add to MetaCart
We show that, in order to achieve efficient maintenance of a balanced binary search tree, no shape restriction other than a logarithmic height is required. The obtained class of trees, general balanced trees, may be maintained at a logarithmic amortized cost with no balance information stored in the nodes. Thus, in the case when amortized bounds are sufficient, there is no need for sophisticated balance criteria. The maintenance algorithms use partial rebuilding. This is important for certain applications and has previously been used with weightbalanced trees. We show that the amortized cost incurred by general balanced trees is lower than what has been shown for weightbalanced trees. � 1999 Academic Press 1.
Visibility Queries in Simple Polygons and Applications
 Algorithms and Computation, 9th International Symposium, ISAAC ’98
, 1998
"... . In this paper we explore some novel aspects of visibility for stationary and moving points inside a simple polygon P . We provide a mechanism for expressing the visibility polygon from a point as the disjoint union of logarithmically many canonical pieces using a quadraticspace data structure. Th ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
. In this paper we explore some novel aspects of visibility for stationary and moving points inside a simple polygon P . We provide a mechanism for expressing the visibility polygon from a point as the disjoint union of logarithmically many canonical pieces using a quadraticspace data structure. This allows us to report visibility polygons in time proportional to their size, but without the cubic space overhead of earlier methods. The same canonical decomposition can be used to determine visibility within a frustum, or to compute various attributes of the visibility polygon efficiently. By exploring the connection between visibility polygons and shortest path trees, we obtain a kinetic algorithm that can track the visibility polygon as the viewpoint moves along polygonal paths inside P , at a polylogarithmic cost per combinatorial change in the visibility. The combination of the static and kinetic algorithms leads to a space querytime tradeoff for the visibility from a point problem ...