Variations of largest rectangle recognition amidst a bichromatic point set

05/17/2019
by   Ankush Acharyya, et al.
0

Classical separability problem involving multi-color point sets is an important area of study in computational geometry. In this paper, we study different separability problems for bichromatic point set P=P_r∪ P_b on a plane, where P_r and P_b represent the set of n red points and m blue points respectively, and the objective is to compute a monochromatic object of the desired type and of maximum size. We propose in-place algorithms for computing (i) an arbitrarily oriented monochromatic rectangle of maximum size in R^2, (ii) an axis-parallel monochromatic cuboid of maximum size in R^3. The time complexities of the algorithms for problems (i) and (ii) are O(m(m+n)(m√(n)+mlog m+n log n)) and O(m^3√(n)+m^2nlog n), respectively. As a prerequisite, we propose an in-place construction of the classic data structure the k-d tree, which was originally invented by J. L. Bentley in 1975. Our in-place variant of the k-d tree for a set of n points in R^k supports both orthogonal range reporting and counting query using O(1) extra workspace, and these query time complexities are the same as the classical complexities, i.e., O(n^1-1/k+μ) and O(n^1-1/k), respectively, where μ is the output size of the reporting query. The construction time of this data structure is O(nlog n). Both the construction and query algorithms are non-recursive in nature that do not need O(log n) size recursion stack compared to the previously known construction algorithm for in-place k-d tree and query in it. We believe that this result is of independent interest. We also propose an algorithm for the problem of computing an arbitrarily oriented rectangle of maximum weight among a point set P=P_r ∪ P_b, where each point in P_b (resp. P_r) is associated with a negative (resp. positive) real-valued weight that runs in O(m^2(n+m)log(n+m)) time using O(n) extra space.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset