## Abstract

Consider a set S of n data points in real d-dimensional space, R^{d}, where distances are measured using any Minkowski metric. In nearest neighbor searching, we preprocess S into a data structure, so that given any query point q ∈ R^{d}, is the closest point of 5 to q can be reported quickly. Given any positive real ∈, a data point p is a (1 + ∈)-approximate nearest neighbor of q if its distance from q is within a factor of (1 + ∈) of the distance to the true nearest neighbor. We show that it is possible to preprocess a set_of n points in R^{d} in O(dn log n) time and O(dn) space, so that given a query point q ∈ R^{d}, and ∈ > 0, a (1 + ∈)-approximate nearest neighbor of q can be computed in O(c_{d,∈} log n) time, where c_{d,∈} ≤ d ⌈1 + 6d/∈⌉^{d} is a factor depending only on dimension and ∈. In general, we show that given an integer k ≥ 1, (1 + ∈)-approximations to the k nearest neighbors of q can be computed in additional O(kd log n) time.

Original language | English |
---|---|

Pages (from-to) | 891-923 |

Number of pages | 33 |

Journal | Journal of the ACM |

Volume | 45 |

Issue number | 6 |

DOIs | |

State | Published - 1998 |

## Keywords

- Algorithms
- Approximation algorithms
- E.1 [Data]: Data Structures
- F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems
- H.3.3 [Information Storage and Retrieval]: Information Search and Retrieval
- Theory