# Internal and external algorithms for the points-in-regions problem — the INSIDE join of geo-relational algebra

## Abstract

We consider the problem of collectively locating a set of points within a set of disjoint polygonal regions when neither for points nor for regions preprocessing is allowed. This problem arises in geometric database systems. More specifically it is equivalent to computing the *inside* join of geo-relational algebra, a conceptual model for geo-data management. We describe efficient algorithms for solving this problem based on plane-sweep and divide-and-conquer, requiring O(n (log n)+t) and O(log^{2} n)+t) time, respectively, and O(n) space, where n is the total number of points and edges, and t the number of reported (point,region) pairs. Since the algorithms are meant to be practically useful we consider apart from the internal versions — running completely in main memory — also versions that run internally but use much less than linear space and versions that run externally, that is, require only a constant amount of internal memory regardless of the amount of data to be processed. Comparing plane-sweep and divide-and-conquer, it turns out that divide-and-conquer can be expected to perform much better in the external case even though it has a higher internal asymptotic worst-case complexity.

An interesting theoretical by-product is a new general technique for handling arbitrarily large sets of objects clustered on a single x-coordinate within a planar divide-and-conquer algorithm and a proof that the resulting "unbalanced" dividing does not lead to a more than logarithmic height of the tree of recursive calls.

## Preview

Unable to display preview. Download preview PDF.

## References

- [BlG]Blankenagel, G., and R.H. Güting, Internal and External Algorithms for the Points-In-Regions Problem — the INSIDE Join of Geo-Relational Algebra. Universität Dortmund, Abteilung Informatik, Forschungsbericht 228, 1987; to appear in
*Algorithmica*.Google Scholar - [Gü1]Güting, R.H., Optimal Divide-and-Conquer to Compute Measure and Contour for a Set of Iso-Rectangles.
*Acta Informatica 21 (1984)*, 271–291.Google Scholar - [Gü2]Güting, R.H., Geo-Relational Algebra: A Model and Query Language for Geometric Database Systems. In: J.W. Schmidt, S. Ceri, and M. Missikoff (eds.), Proc. of the Intl. Conf. on Extending Database Technology, Venice, March 1988, 506–527.Google Scholar
- [GüS]Güting, R.H., and W. Schilling, A Practical Divide-and-Conquer Algorithm for the Rectangle Intersection Problem.
*Information Sciences 42 (1987)*, 95–112.Google Scholar - [GüW]Güting, R.H., and D. Wood, Finding Rectangle Intersections by Divide-and-Conquer.
*IEEE Transactions on Computers C-33 (1984)*, 671–675.Google Scholar