Abstract. Given a set S of n sites (points), and a distance measure d , the nearestneighborsearching problem is to build a data structure so that given a query point q , the site nearest to q can be found quickly. This paper gives data structures for this problem when the sites and queries are in a metric space. One data structure, D(S) , uses a divide-and-conquer recursion. The other data structure, M(S,Q) , is somewhat like a skiplist. Both are simple and implementable. The data structures are analyzed when the metric space obeys a certain sphere-packing bound, and when the sites and query points are random and have distributions with an exchangeability property. This property implies, for example, that query point q is a random element of
$ S\cup\{q\} $ . Under these conditions, the preprocessing and space bounds for the algorithms are close to linear in n . They depend also on the sphere-packing bound, and on the logarithm of the distanceratio
$ \Upsilon(S) $ of S , the ratio of the distance between the farthest pair of points in S to the distance between the closest pair. The data structure M(S,Q) requires as input data an additional set Q , taken to be representative of the query points. The resource bounds of M(S,Q) have a dependence on the distance ratio of S
$\cup$ Q . While M(S,Q) can return wrong answers, its failure probability can be bounded, and is decreasing in a parameter K . Here K≤ |Q|/n is chosen when building M(S,Q) . The expected query time for M(S,Q) is O(Klog n)log
$\Upsilon(S\cup Q)$ , and the resource bounds increase linearly in K . The data structure D(S) has expected O( log n)O(1) query time, for fixed distance ratio. The preprocessing algorithm for M(S,Q) can be used to solve the all nearest neighbor problem for S in O(n(log n)2(log ϒ(S))2) expected time.
[1]
Linda G. Shapiro,et al.
The nearest neighbor problem in an abstract metric space
,
1982,
Pattern Recognit. Lett..
[2]
Kenneth L. Clarkson,et al.
Fast algorithms for the all nearest neighbors problem
,
1983,
24th Annual Symposium on Foundations of Computer Science (sfcs 1983).
[3]
Rajeev Motwani,et al.
Deferred data structuring: Query-driven preprocessing for geometric search problems
,
1986,
SCG '86.
[4]
Kenneth L. Clarkson,et al.
A Randomized Algorithm for Closest-Point Queries
,
1988,
SIAM J. Comput..
[5]
Pravin M. Vaidya,et al.
AnO(n logn) algorithm for the all-nearest-neighbors Problem
,
1989,
Discret. Comput. Geom..
[6]
Jeffrey K. Uhlmann,et al.
Satisfying General Proximity/Similarity Queries with Metric Trees
,
1991,
Inf. Process. Lett..
[7]
Kenneth L. Clarkson,et al.
RANDOMIZED GEOMETRIC ALGORITHMS
,
1992
.
[8]
Peter N. Yianilos,et al.
Data structures and algorithms for nearest neighbor search in general metric spaces
,
1993,
SODA '93.
[9]
Ketan Mulmuley,et al.
Computational geometry : an introduction through randomized algorithms
,
1993
.
[10]
Sergey Brin,et al.
Near Neighbor Search in Large Metric Spaces
,
1995,
VLDB.
[11]
Christos Faloutsos,et al.
Analysis of n-Dimensional Quadtrees using the Hausdorff Fractal Dimension
,
1996,
VLDB.