A problem stated by Agarwal, Aranov, Sharir, and Suri in the Sixth Annual Symposium on COMPUTATIONAL GEOMETRY is to find a faster algorithm for computing the kth smallest distance in a set of n points in the plane [1]. They presented a deterministic algorithm with expected running time of O(n3/2 log5/2 n) and a randomized algorithm requiring time O(n4/3log8/3' n). A more general problem is that of computing and enumerating the k smallest distances. Smid [5] recently gave an O(n log n) time O(n) space algorithm for enumerating the O(n2/3) smallest distances for a set of n points in d-space and posed as an open problem enumerating the ⊙(n) smallest distances in O(nlogn) time and O(n) space. In this paper we present a deterministic O(n log n + k log n) time and O(n + k) space algorithm for enumerating the k smallest distances in a set of n points in the plane, thus solving Smid's open problem for the case d = 2. Furthermore, for small k (that is, when k is O(n)) our algorithm provides a solution to the problem of computing the kth distance which is a significant improvement over the best deterministic algorithm of [1]. The algorithm is conceptually very simple, is easy to implement, and is based on a common data structure: the Delaunay triangulation.
CITATION STYLE
Dickerson, M. T., & Drysdale, R. S. (1991). Enumerating k distances for n points in the plane. In Proceedings of the Annual Symposium on Computational Geometry (pp. 234–238). Association for Computing Machinery. https://doi.org/10.1145/109648.109674
Mendeley helps you to discover research relevant for your work.