Level Planarity Testing in Linear Time
In a leveled directed acyclic graph G = (V, E) the vertex set V is partitioned into k ≤ ∣V∣ levels V 1, V 2,...,V k such that for each edge (u,v) ∈ E with u ∈ V i and v ∈ V j we have i <j. The level planarity testing problem is to decide if G can be drawn in the plane such that for each level V i , all v ∈ V i are drawn on the line l i = (x, k − i) ∣x ∈ ℝ , the edges are drawn monotone with respect to the vertical direction, and no edges intersect except at their end vertices. If G has a single source, the test can be performed in O(∣V∣) time by an algorithm of Di Battista and (1988) that uses the PQ-tree data structure introduced by Booth and (1976). PQ-trees have also been proposed by Heath and (1996a,b) to test level planarity of leveled directed acyclic graphs with several sources and sinks. It has been shown in (1997) that this algorithm is not correct in the sense that it does not state correctly level planarity of every level planar graph. In this paper, we present a correct linear time level planarity testing algorithm that is based on two main new techniques that replace the incorrect crucial parts of the algorithm of Heath and (1996a,b).
- [1996b]L.S. Heath and S.V. Pemmaraju. Stack and queue layouts of directed acyclic graphs: Part II. Technical report, Department of Computer Science, Virginia Polytechnic Institute & State University, 1996b.Google Scholar