Efficient Algorithms for Geometric Graph Search Problems

Hiroshi Imai, Takao Asano · SIAM Journal on Computing · 1986

In this paper, we show that many graph search problems can be solved quite efficiently for a geometric intersection graph of horizontal and vertical line segments. We first extract several basic operations for depth first search and breadth first search on a graph. Then we present data structures for the intersection graph in terms of which those operations can be implemented in an efficient manner. The data structures enable us to solve various graph search problems besides depth first search and breadth first search. Specifying the results obtained in this paper for an intersection graph of n horizontal and vertical segments with m pairs of intersecting segments, we obtain algorithms with the following complexity, where $N = \min \{ m,n\log n\} $. (i) Depth first search and breadth first search can be executed in $O(n\log n)$ time and $O(N)$ space. (ii) The biconnected components can be found in $O(n\log n)$ time and $O(N)$ space. (iii) A maximum matching and a maximum independent set can be found in $O(\sqrt n N)$ time and $O(N)$ space when no two horizontal (vertical) segments intersect. (iv) The connectivity $k_G $ can be found in $O(k_G n^{{3 / 2}} N)$ time and $O(N)$ space. Our algorithms can be applied to various practical problems such as the problem of finding a minimum dissection of a rectilinear region, which arises in the manipulation of VLSI artwork data, and the problem of determining whether there is a Manhattan wiring on a single layer, which arises in the design automation of digital systems.

Read the paper · More papers on PaperTik