hide
Free keywords:
-
Abstract:
Let $A$ and $B$ be two sets of ``well-behaved'' (i.e., continuous and
x-monotone) curve segments in the plane, where no two segments in $A$
(similarly, $B$) intersect. In this paper we show how to report all
points of intersection between segments in $A$ and segments in $B$, and
how to construct the arrangement defined by the segments in $A\cup B$
in parallel using the concurrent-read-exclusive-write (CREW-) PRAM
model. The algorithms perform a work of $O(n\log n+k)$ using
$p\leq n+k/\log n$ ($p\leq n/\log n+k/\log ^2 n$, resp.,) processors
if we assume that the handling of segments is ``cheap'', e.g., if
two segments intersect at most a constant number of times,
where $n$ is the total number of segments and $k$ is the number of
points of intersection. If we only assume that
a single processor can compute an arbitrary point of intersection
between two segments in constant time, the performed work increases
to $O(n\log n+m(k+p))$, where $m$ is the maximal number of points of
intersection between two segments.
We also show how to count the number of points of intersection between
segments in $A$ and segments in $B$ in time $O(\log n)$ using $n$
processors on a CREW-PRAM if two curve segments intersect at most twice.