Kinetic and dynamic data structures for closest pair and all nearest neighbors

Pankaj K. Agarwal, Haim Kaplan, Micha Sharir

Research output: Contribution to journalArticlepeer-review

Abstract

We present simple, fully dynamic and kinetic data structures, which are variants of a dynamic two-dimensional range tree, for maintaining the closest pair and all nearest neighbors for a set of n moving points in the plane; insertions and deletions of points are also allowed. If no insertions or deletions take place, the structure for the closest pair uses O(n log n) space, and processes O(n2Βs+2(n)log n) critical events, each in O(log2n) time. Here s is the maximum number of times where the distances between any two specific pairs of points can become equal, Βs(q) = s(q)/q, and s(q) is the maximum length of Davenport-Schinzel sequences of order s on q symbols. The dynamic version of the problem incurs a slight degradation in performance: If m n insertions and deletions are performed, the structure still uses O(n log n) space, and processes O(mnΒs+2(n)log3 n) events, each in O(log3n) time. Our kinetic data structure for all nearest neighbors uses O(n log2 n) space, and processes O(n 2Β2s+2(n)log3 n) critical events. The expected time to process all events is O(n2Β s+22(n) log4n), though processing a single event may take Θ(n) expected time in the worst case. If m n insertions and deletions are performed, then the expected number of events is O(mnΒ2s+2(n) log3n) and processing them all takes O(mnΒ2s+2(n) log4n). An insertion or deletion takes O(n) expected time.

Original languageEnglish
Article number4
JournalACM Transactions on Algorithms
Volume5
Issue number1
DOIs
StatePublished - 1 Nov 2008

Keywords

  • Closest pair
  • Computational geometry
  • Kinetic data structures
  • Nearest neighbors

Fingerprint

Dive into the research topics of 'Kinetic and dynamic data structures for closest pair and all nearest neighbors'. Together they form a unique fingerprint.

Cite this