Optimal st-orientations for plane triangulations

J Comb Optim
DOI 10.1007/s10878-007-9119-8
Optimal st-orientations for plane triangulations
Huaming Zhang · Xin He
© Springer Science+Business Media, LLC 2007
Abstract For plane triangulations, it has been proved that there exists a plane triangulation G with n vertices such that for any st-orientation of G, the length of the
longest directed paths of G in the st-orientation is ≥ 2n
3 (Zhang and He in Lecture Notes in Computer Science, vol. 3383, pp. 425–430, 2005). In this paper, we
prove the bound 2n
3 is optimal by showing that every plane triangulation G with nvertices admits an st-orientation with the length of its longest directed paths bounded
by 2n
3 + O(1). In addition, this st-orientation is constructible in linear time. A byproduct of this result is that every plane graph G with n vertices admits a visibility
representation with height ≤ 2n
3 + O(1), constructible in linear time, which is also
optimal.
Keywords st-orientation · Plane triangulation
1 Introduction
st-orientations (also known as st-numberings or bipolar orientations) of undirected
graphs satisfy certain criteria. They define no directed cycles and have exactly one
source s and one sink t. From which, st-orientations for planar graphs play key roles
in many graphs algorithms. For example, for an undirected biconnected graph G =
(V , E), many graph drawing algorithms, such as hierarchical drawings (di Battista
A preliminary version of this paper was presented at AAIM 2007.
H. Zhang ()
Computer Science Department, University of Alabama in Huntsville, Huntsville, AL 35899, USA
e-mail: [email protected]
X. He
Department of Computer Science and Engineering, SUNY at Buffalo, Buffalo, NY 14260, USA
e-mail: [email protected]
J Comb Optim
et al. 1998), visibility representations (Kant 1997; Kant and He 1997; Lin et al. 2004;
Rosenstiehl and Tarjan 1986; Tamassia and Tollis 1986; Zhang and He 2005, 2006)
and orthogonal drawings (Papakostas and Tollis 1998), use an st-orientation of G as
the first step to compute a drawing of G. Therefore, the importance of st-orientations
in graph drawing is evident.
Given a biconnected undirected graph G = (V , E), with n vertices and m edges,
and two distinct nodes s, t, an st-orientation of G is defined as an orientation of its
edges such that G becomes a directed acyclic graph with s as the single source and
t as the single sink. An st-orientation of an undirected graph can be easily computed
using an st-numbering (Even and Tarjan 1976) of the respective graph G and orienting the edges of G from lower-numbered vertices to higher-numbered vertices.
An st-numbering of G is a numbering of its vertices such that s receives number
1, t receives number n and every other node except s, t is adjacent to at least one
lower-numbered vertex and at least one higher-numbered vertex.
st-numberings were first introduced in Lempel et al. (1967), where it was proved
(together with an O(nm) time algorithm) that given any edge (s, t) of a biconnected
undirected graph G, we can construct an st-numbering. Later in the year of 1976,
Even and Tarjan proposed an algorithm that computes an st-numbering of an undirected biconnected graph in O(n+m) time (Even and Tarjan 1976). Ebert (1983) proposed a slightly simpler algorithm for the computation of such a numbering, which
was further simplified by Tarjan (1986). The planar case has been extensively investigated in Rosenstiehl and Tarjan (1986), where a linear time algorithm was presented
which may reach any st-orientation of a planar graph. However, no information regarding the bound of the length of the longest directed paths resulted from the storientation was given, except for the trivial bound (n − 1). In Maon et al. (1986), a
parallel algorithm was described. An overview of the work concerning bipolar orientations was presented in Fraysseix et al. (1995) and Ossona de Mendez (1994).
However, all algorithms mentioned above compute an st-orientation without expecting any specific properties of the oriented graph. Recently, by using canonical
ordering trees and Schnyder’s realizers for plane triangulations, Zhang and He (2006)
proved that for any plane triangulation G with n vertices, there is an st-orientation of
G, constructible
√ in linear time such that the length of the longest directed paths is at
most 2n
3 + 2 n, which is nearly optimal since there is a plane triangulation G with
n vertices such that the length of the longest directed paths
√ for any st-orientations
of G is ≥ 2n
3 (Zhang and He 2005). There is still a O( n) gap between the lower
bound and the current nearly optimal algorithm. In this paper, we close this gap by
using three trees of a Schnyder’s realizer of a plane triangulation and by utilizing each
such tree in a somewhat thorough way. As a direct by-product of this result, we prove
that any plane graph G with n vertices admits a visibility representation, constructible
in linear time, with height at most 2n
3 + O(1), which is also optimal. For empirical
algorithms on shortening the length of the longest directed paths, we refer readers to
Papamanthou and Tollis (2007). It introduced parameterized st-orientations, aiming
to control the length of the longest path of the resulting directed acyclic graph.
The present paper is organized as follows. Section 2 introduces preliminaries. Section 3 presents the construction of an st-orientation for a plane triangulation G with
the length of its longest directed paths ≤ 2n
3 + O(1). The result on visibility repre-
J Comb Optim
sentation with optimal height for a plane graph G is also presented in this section.
Section 4 concludes the paper.
2 Preliminaries
We begin this section by mentioning some motivations of investigating st-orientations. Many algorithms in graph drawing use st-orientations as a first step. More importantly, the length of the longest paths from s to t of the specific st-orientation
determines certain aesthetics of the drawing. For example:
Hierarchical drawings One of the most common algorithms in hierarchical drawing
is the longest path laying (di Battista et al. 1998). This algorithm applies to directed
acyclic graphs (which are necessarily planar). The height of such a drawing is always
equal to the length of the longest paths of the directed acyclic graph, l. If we want to
visualize an undirected graph G using this algorithm, we must first st-orient G. The
height of the produced drawing will be equal to the length of the longest path l of the
produced st-orientation.
Visibility representations A visibility representation of a plane graph G is a representation, where the vertices of G are represented by non-overlapping horizontal
line segments (called vertex segment), and each edge of G is represented by a vertical line segment touching the corresponding vertex segments of its end vertices. In
order to compute a visibility representation of a plane graph G, we first computer
an st-orientation for G. We then assign unit-weights to the edges of G and compute
the longest directed path to each one of its vertices from the single source s. The ycoordinate of each vertex u in the visibility representation is equal to the length of the
longest path from s to u (Tamassia and Tollis 1986). We have the following Lemma
(Rosenstiehl and Tarjan 1986; Tamassia and Tollis 1986):
Lemma 1 Let G be a 2-connected plane graph with an st-orientation. A visibility
representation of G can be obtained from an st-orientation O of G in linear time.
Furthermore, the height of the visibility representation equals the length of the longest
directed path in O.
Therefore, for the above graph drawing problems, it is crucial to find better storientations such that the length of the longest directed paths is as small as possible.
Many researches have been done on shortening the length of the longest directed
paths. In the empirical algorithms’ side, Papamanthou and Tollis introduced parameterized st-orientations (Papamanthou and Tollis 2007), aiming to control the length
of the longest paths of the resulting directed acyclic graph. In the theoretical algorithms’ side, using canonical ordering trees and Schnyder’s realizer for plane triangulations, Zhang and He (2006) proved that for any plane triangulation G with n
vertices, there is an st-orientation of G, constructible in
√ linear time such that the
length of the longest directed paths is at most 2n
+
2
n, which is nearly opti3
mal since there is a plane triangulation G with n vertices such that the length of the
J Comb Optim
Fig. 1 Edge directions around
an internal vertex v
longest directed paths for √
any st-orientations of G is at least 2n
3 (Zhang and He
2005). There is still an O( n) gap between the lower bound and the current nearly
optimal upper bound, which will be closed in this paper.
Next, we will introduce some related definitions and preliminary results. Definitions not mentioned here are standard.
A planar graph is a graph G = (V , E) such that the vertices of G can be drawn
in the plane and the edges of G can be drawn as non-intersecting curves. Such a
drawing is called an embedding. The embedding divides the plane into a number of
connected regions. Each region is called a face. The unbounded face is called external
face. The other faces are internal faces. A plane graph is a planar graph with a fixed
embedding. A plane triangulation is a plane graph where every face is a triangle
(including the external face). A subgraph G = (V , E ) of G = (V , E) is called a
spanning subgraph of G if V = V . An orientation of a graph G assigns a direction
to every edge of G. A numbering of a graph G with n vertices is a one-to-one and onto
mapping from {1, 2, . . . , n} to the vertex set of G. Obviously, given a numbering of
G, we can obtain an orientation of G by directing each edge from its lower-numbered
vertex to its higher-numbered vertex.
Let O be an orientation (or a numbering) of a graph G. If G has no directed cycles
in the orientation, we will use length(O) to denote the length of the longest directed
paths of G. (Note that, we do not require that O is necessarily an st-orientation.)
An ordered list O consisting of elements a1 , a2 , . . . , ak is written as O =
a1 , a2 , . . . , ak . For two elements ai and aj , if ai appears before aj in O, we write
ai ≺O aj . The reverse of an ordered list O = a1 , a2 , . . . , ak is the ordered list
ak , . . . , a2 , a1 , which is going to be denoted by Or . The concatenation of two ordered lists O1 and O2 is written as O1 O2 .
Definition 1 Let G be a plane triangulation of n vertices with three external vertices
v1 , v2 , vn in counterclockwise order. A realizer (also called a Schnyder’s realizer)
R = {T1 , T2 , Tn } of G is a partition and orientation of its internal edges into three
sets T1 , T2 , Tn such that the following hold:
• For each i ∈ {1, 2, n}, the internal edges incident to vi are in Ti and directed toward
vi .
• For each internal vertex v of G, it has exactly one outgoing edge in each of
T1 , T2 , Tn . The counterclockwise order of the edges incident to v is: leaving in
T1 , entering in Tn , leaving in T2 , entering in T1 , leaving in Tn , and entering in T2
(see Fig. 1). Each entering block could be empty.
J Comb Optim
Fig. 2 A plane triangulation G
and a realizer R of G
Figure 2 show a realizer of a plane triangulation G. The dashed lines (dotted lines
and solid lines, respectively) are the edges in T1 (T2 and Tn , respectively).
Schnyder showed in (Schnyder 1989) that every plane triangulation G has a realizer which can be constructed in linear time. It was also shown that each set Ti of a
realizer is a tree rooted at the vertex vi . For each Ti of a realizer, we denote by T i
the tree composed of Ti augmented with the two edges of the external face incident
to the root vi of Ti . Obviously T i is a spanning tree of G.
Let i, j, k be a cyclic rotation of {1, 2, n}. (Namely, i = 1, j = 2 and k = n; or
i = 2, j = n and k = 1; or i = n, j = 1 and k = 2.) Let u be an internal vertex of G.
Consider the tree T i . Let wj and wk be the parent of u in T j and T k respectively.
Then we have the following simple observation (Chiang et al. 2001):
Observation 1 wj precedes u in the counterclockwise postordering of T i . wk precedes u in the clockwise postordering of T i . wj succeeds u in the clockwise postordering of T i . wk succeeds u in the counterclockwise postordering of T i .
For example, in Fig. 2, T n is Tn (the tree in thick solid lines) augmented with
edges (v1 , vn ) and (v2 , vn ), which is a spanning tree of G. Consider the case for
i = n, j = 1 and k = 2. Consider the tree T n , for the vertex u = 7, its parent in T 1
is wj = 6, its parent in T 2 is wk = 9. They certainly hold the properties stated in
Observation 1.
Let T = (V , E) be a tree drawn in the plane, a balanced partition (Zhang and
He 2006) of T is the partition of V into three ordered subsets A, B, C such that:
Let ai be the ith vertex of T in counterclockwise postordering, and bi be the
ith vertex of T in clockwise postordering. Marking the vertices of T in the order
a1 , b1 , a2 , b2 , . . . , ai , bi , . . . , continue this process as long as the next pair of the vertices ai+1 , bi+1 have not been marked. This process stops when either ak+1 = bk+1
or bk+1 is already marked. This vertex is called the merge vertex of T . When the
marking process stops, the un-marked vertices of T form a single path from the
J Comb Optim
merge vertex ak+1 to the root of T . This path is called the leftover path of T . Then
A = a1 , a2 , . . . , ak , B = b1 , b2 , . . . , bk , and C is the leftover path ordered from
the merge vertex to the root of T .
In the above balanced partition, the subgraph induced by vertices in A ∪ B defines
a subgraph of a ladder graph of order k. Ladder graph is defined as follows (Zhang
and He 2006):
Definition 2 Let L = (VL , EL ) be a plane graph. If the vertex set VL is partitioned
into two ordered lists A = a1 , a2 , . . . , ak and B = b1 , b2 , . . . , bk and the edge
set EL is partitioned into EA , EB , and Ecross , where EA = {(ai , ai+1 ) | 1 ≤ i < k};
EB = {(bi , bi+1 ) | 1 ≤ i < k}; and Ecross consists of edges between a vertex ai ∈ A
and a vertex bj ∈ B, then any spanning subgraph of L is called a ladder graph of
order k. The edges in Ecross are called cross edges.
A numbering O of the vertices of a ladder graph L = (A ∪ B, EL ) is consistent
with respect to L if for any i < j , ai ≺O aj and bi ≺O bj .
The following lemma was proved in Zhang and He (2006):
Lemma 2 Let L = (A∪B, EL ) be a ladder √
graph of order k. Then L has a consistent
numbering O such that length(O) ≤ k + 2 k − 1. O can be constructed in linear
time.
3 Optimal st-orientations for plane triangulations
Let G be a plane triangulation with n vertices, v1 , v2 , vn be its three external vertices
in counterclockwise order, R = {T1 , T2 , Tn } be a realizer of G. For any internal vertex
u of G, consider the three paths P1 (u), P2 (u), Pn (u) from u to the roots of T1 , T2 , Tn
respectively, they only intersect at the vertex u. In addition, they separate the interior
regions of G into three subregions R12 (u), R2n (u), Rn1 (u) (Rij (u) is also denoted
by Rj i (u)), in which the subregion Rij (u) is enclosed by the edge (vi , vj ) and paths
Pi (u), Pj (u), i, j ∈ {1, 2, n}, i = j . The regions specified here are open and hence
don’t include their boundaries. We have the following technical lemma:
Lemma 3 Let G be a plane triangulation with n vertices, v1 , v2 , vn be its three
external vertices in counterclockwise order, R = {T1 , T2 , Tn } be a realizer of G, and
u be an internal vertex of G. We have the following:
1. For any i, j ∈ {1, 2, n}, i = j , the subgraph of T i induced by the vertices in
Rij (u) ∪ Pi (u) − {u} is a subtree of T i .
2. For any i ∈ {1, 2, n}, the subgraph of T i induced by the vertices in Rij (u) ∪
Rik (u) ∪ Pi (u) − {u} is a subtree of T i .
Proof
1. We will prove the case for i = 1 and j = n. The other cases are similar. If the
vertex v is on the path P1 (u), it is connected by the path P1 (u) from v to its root
J Comb Optim
v1 . On the other hand, if the vertex v is in the region R1n (u), we then consider the
path P from v to v1 in T 1 . If P and P1 (u) only intersects at v1 , then v is connected
to v1 in the subgraph through P . If P intersects P1 (u) at a vertex v = v1 , then P
and P1 (u) share the portion from v to v1 . Therefore, v is connected to v through
P , and then connected to v1 through P1 (u) in the subgraph. Therefore, it is a
subtree of T 1 .
2. According to 1, the two subgraphs of T i induced by vertices in Rij (u) ∪ Pi (u) −
{u} and Rik (u) ∪ Pi (u) − {u} are two subtrees of T i . The common root vi links
the two subtrees of T i into one subtree of T i .
j
We are going to denote the subtree in Lemma 3(1) by T i (u), the subtree in Lemma
jk
3(2) by T i (u) in the remaining of the paper. For example, in Fig. 2, consider the
n
vertex u = 7. T 1 (u) is the tree with vertices {2, 4, 5, 6} in T 1 , where vertex 2 is its
1n
root v1 . T 2 (u) is the tree with vertices {8, 9, 10, 11, 12, 13, 14} in T 2 , where vertex
14 is its root v2 .
Before we proceed to next lemma, we would like to point out another simple
observation:
Observation 2 Let T be a tree rooted at v. T be a subtree of T , also with v as
its root. Let u, w be two vertices in T . Then omitting vertices which are not in T from the counterclockwise (clockwise, respectively) postordering of T produces a
counterclockwise (clockwise, respectively) postordering of T . This ordering of T will be called the induced counterclockwise (clockwise, respectively) postordering
from T to T .
Lemma 4 Let G = (V , E) be a plane triangulation with n vertices, v1 , v2 , vn be
three external vertices in counterclockwise order, and R = {T1 , T2 , Tn } be a realizer of G. If there is a path Pi (v), i ∈ {1, 2, n} with length ≥ n3 , then G has an
st-orientation O with length(O) ≤ 2n
3 + O(1). O is constructible in linear time.
Proof We will prove for the case i = n, the other cases are similar. Assume that there
is an internal vertex v such that the length of Pn (v) is ≥ n3 . The vertices of G can
n
then be decomposed into three sets: A = {vertices in T 1 (v)}, B = {vertices in the
1n
path Pn (v)}, and C = {vertices in T 2 (v)}. Obviously V = A ∪ B ∪ C. We are going
to order A, B, C into ordered lists as follows:
1. For the vertices in A, let OA be the induced clockwise postordering from T 1 to
n
T 1 (v).
2. For the vertices in B, they are all on the path Pn (v). When traversing the path
from v to vn , we insert the first vertex to the very end, the second vertex to the
very front, recursively insert the remaining vertices into the next available end or
the next available front of the ordered list. So the third vertex in the path actually
sits on the second last position in the ordered list, the fourth vertex actually sits on
the second position in the ordered list, and so on. Denote this order by OB .
3. For the vertices in C, let OC be the induced counterclockwise postordering from
1n
T 2 to T 2 (v).
J Comb Optim
r O O defines an st-orientation O for G.
Claim The concatenation of OA
B C
Proof of Claim
1. v1 is the first in O, v2 is the last in O.
2. vn succeeds v1 , but it proceeds v2 in O.
n
3. For any vertex u = v1 in A, its parent in T 1 (v) succeeds u in OA . Therefore it
r
proceeds u in OA , and hence it proceeds u in O. According to Observation 1, the
parent w of u in T n proceeds u in the clockwise postordering in T 1 . So if w is
n
also in T 1 (v), then according to Observation 2, w also proceeds u in the induced
n
r , and
clockwise postordering of T 1 (v), which is OA . Thus w succeeds u in OA
n
hence in O. On the other hand, if w is not in T 1 (v), then w is either in B or in C.
Either way, w succeeds u in O.
4. For any vertex u ∈ B, its parent w1 in T 1 is in A, so w1 proceeds u in O. Its parent
w2 in T 2 is in C, so w2 succeeds u in O.
1n
5. For any vertex u = v2 ∈ C, its parent p in T 2 (v) succeeds u in OC . Hence p
succeeds u in O. According to Observation 1, the parent w of u in T n proceeds
1n
u in the counterclockwise postordering in T 2 . So if w is also in T 2 (v), then according to Observation 2, w also proceeds u in the counterclockwise postordering
1n
OC , since it is the induced counterclockwise postordering from T 2 to T 2 (v).
Therefore, w proceeds u in OC , and hence in O. On the other hand, if w is not in
1n
T 2 (v), then w is either in A or in B. Either way, w proceeds u in O.
Therefore, O is an st-orientation for G, since every vertex other than the source
v1 or the sink v2 has one vertex proceeding it and one vertex succeeding it in the
ordering.
Obviously, O can be constructed in linear time.
Consider a longest directed path P of O. It can only passes through at most 2
vertices on path Pn (v). Therefore, the total number of vertices it can pass through is
2n
at most 2n
3 + 2. Hence, length(O) ≤ 3 + O(1).
Lemma 5 Let G = (V , E) be a plane triangulation with n vertices, v1 , v2 , vn be
three external vertices in counterclockwise order, and R = {T1 , T2 , Tn } be a realizer
of G. If all the paths Pi (v), i ∈ {1, 2, n} in T i have length < n3 , then G has an storientation O, constructible in linear time with length(O) ≤ 2n
3 + O(1).
Proof Let l be the length of the longest paths for all Pi (v), i = 1, 2, n in T i . We then
have l < n3 . Let l = n3 − 2k. Therefore k > 0.
Consider the balanced partition A, B, C of T n , in which C is the leftover path.
Therefore |C| = r ≤ l. Because it is a balanced partition, we have |A| = |B| = n−r
2 ≥
n−l
n
=
+
k.
2
3
Claim The subgraph of T 1 induced by all the vertices in A is a subtree of T 1 , denote
A
it by T 1 . The subgraph of T 2 induced by all the vertices in B is a subtree of T 2 ,
B
denote it by T 2 .
J Comb Optim
Proof of Claim We will only show the case for A. The other case is similar. When
we do balanced partition for T n , we use counterclockwise postordering of T n to
accumulate the set A. For any vertex u in A, according to Observation 1, its parent w
in T 1 comes before u in this counterclockwise postordering of T n . Therefore, both u
and its parent w are in A. Hence, A induces a subtree of T 1 .
A
For the tree T 1 , we can further consider its balanced partition, denote it by
A , B , C , in which C is the leftover path. Consider C , its length is ≤ l. Therefore,
n
|
+k−l
we have |A | = |B | = |A|−|C
≥ 3 2 = 3k
2
2 . Since both |A | and |B | are necesB
sarily integers, therefore |A | = |B | ≥ 3k
2 . For the tree T 2 , we can also further
consider its balanced partition, denote it by A , B , C , in which C is the leftover
path. Similarly, |A | = |B | ≥ 3k
2 .
We are going to order A, B, C into ordered lists as the following:
A
1. For the vertices in A = A ∪ B ∪ C , they form the tree T 1 . Apply Lemma 2 to
the subgraph induced by A ∪ B (which is a ladder graph) to obtain an ordering
OA B . Then order the leftover path C towards its end vertex v1 , i.e. v1 is the last
vertex in this ordering. Denote this ordering by OC . Let OA be the concatenation
OA B OC .
2. For the vertices in C, they are all on one path. When traversing the path from one
end v to the other end vn , we insert the first vertex to the very end, the second
vertex to the very front, recursively insert the remaining vertices into the next
available end or the next available front of the ordered list. So the third vertex
in the path actually sits on the second last position in the ordered list, the fourth
vertex actually sits on the second position in the ordered list, and so on. Denote
this order by OC .
B
3. For the vertices in B = A ∪ B ∪ C , they form the tree T 2 . Apply Lemma 2 to
the subgraph induced by A ∪ B (which is a ladder graph) to obtain an ordering
OA B . Then order the leftover path C towards its end vertex v2 , i.e. v2 is the last
vertex in this ordering. Denote this ordering by OC . Let OB be the concatenation
OA B OC .
r O O defines an st-orientation O for G.
Claim The concatenation OA
C B
Proof of Claim
1. v1 is the first in O, v2 is the last in O.
2. vn succeeds v1 , but it proceeds v2 in O.
A
3. For any vertex u = v1 in A, its parent in T 1 succeeds u in OA , and hence its
parent proceeds u in O. If u ∈ A , consider its parent w in T 2 , according to Observation 1, w proceeds u in the counterclockwise postordering of T 1 . According
A
to Observation 2, if w is also in T 1 , then w proceeds u in the counterclockwise
A
postordering of T 1 , since it is the induced counterclockwise postordering from
A
T 1 to T 1 . Because A is accumulated counterclockwisely from the balanced parA
tition of T 1 , so w is also in A and w proceeds u in OA B , and hence in OA .
J Comb Optim
r , and hence in O. On the other hand, if w is not
Therefore, w succeeds u in OA
A
in T 1 , then w is either in B or in C. Either way, w succeeds u in O. Similarly, if
u ∈ B , its parent in T n succeeds u in O. If u ∈ C , then both its parents in T 2 and
T n succeed u in O.
4. The case for a vertex u = v2 in B is similar to the above case and can be proved
similarly.
5. For any vertex u ∈ C, its parent w1 in T 1 is in A, so w1 proceeds u in O. Its parent
w2 in T 2 is in B, so w2 succeeds u in O.
Therefore, O is an st-orientation for G, since every vertex other than the source
v1 or the sink v2 has one vertex proceeding it and one vertex succeeding it in the
ordering.
Obviously, O can be constructed in linear time.
Now we need to show that length(O) is ≤ 2n
3 + O(1).
Similar to Lemma 4, any longest directed path P of O can pick at most two verr , since the ladder graph A ∪ B is
tices from C. Applying Lemma 2, within OA
√
3k
r
of order at least p = 2 , therefore, OA can pick at most p + 2 p − 1 + 1 =
√
p + 2 p vertices from A ∪ B . (The plus 1 is because here we consider number of
vertices instead of number of edges.). Similarly, for the ladder graph A ∪ B , it is of
√
order at least p, therefore, OB can pick at most p + 2 p vertices from A ∪ B .
So even if P picks all the vertices from C and C (Both are ≤ l), the total length of
√
√
P is still at most l + l + 2 + 2(p + 2 p) = 2n
3 − 4k + 2(p + 2 p) + 2. Because
√
p = 3k
2 , it is easy to see that −4k + 2(p + 2 p) + 2 ≤ O(1). Therefore, the
length(O) ≤ 2n
3 + O(1).
Now we can have our main theorem:
Theorem 1
1. Let G be a plane triangulation with n vertices. Then G admits an st-orientation
O, constructible in linear time with length(O) ≤ 2n
3 + O(1).
2. Let G be a plane graph with n vertices. Then G admits a visibility representation,
constructible in linear time with height ≤ 2n
3 + O(1).
Proof
1. It follows directly from Lemmas 4 and 5.
2. If G is not a plane triangulation, we add dummy edges to triangulate it into a
plane triangulation G . Then according to Statement 1 and Lemma 1, G admits a
visibility representation with height ≤ 2n
3 +O(1), which is obviously constructible
in linear time. After deleting corresponding vertical line segments for these added
dummy edges, we have a visibility representation for G with the same height,
which is ≤ 2n
3 + O(1).
Note that, according to a result in (Zhang and He 2005), both above bounds are
optimal.
J Comb Optim
4 Conclusions
In this paper, we proved that any plane triangulation G with n vertices has an
st-orientation O with length(O) ≤ 2n
3 + O(1), which is optimal. It is interesting to
investigate whether this result holds for general biconnected plane graphs.
References
Chiang Y-T, Lin C-C, Lu H-I (2001) Orderly spanning trees with applications to graph encoding and graph
drawing. In: Proceedings of the 12th annual ACM-SIAM SODA. ACM Press, New York, pp 506–515
di Battista G, Eades P, Tammassia R, Tollis I (1998) Graph drawing: algorithms for the visualization of
graphs. Hall, New York
Ebert J (1983) st -ordering the vertices of biconnected graphs. Computing 30(1):19–33
Even S, Tarjan R (1976) Computing an st -numbering. Theor Comput Sci 2:339–344
Fraysseix HD, de Mendez PO, Rosenstiehl P (1995) Bipolar orientations revisited. Discrete Appl Math
56:157–179
Kant G (1997) A more compact visibility representation. Int J Comput Geom Appl 7:197–210
Kant G, He X (1997) Regular edge labeling of 4-connected plane graphs and its applications in graph
drawing problems. Theor Comput Sci 172:175–193
Lempel A, Even S, Cederbaum I (1967) An algorithm for planarity testing of graphs. In: Theory of graphs,
proceedings of an international symposium, Rome, July 1966, pp 215–232
Lin C-C, Lu H-I, Sun I-F (2004) Improved compact visibility representation of planar graph via Schnyder’s
realizer. SIAM J Discrete Math 18:19–29
Maon Y, Schieber B, Vishkin U (1986) Parallel ear decomposition search (eds) and st -numbering in
graphs. Theor Comput Sci 47:277–298
Ossona de Mendez P (1994) Orientations bipolaires. PhD thesis, Ecole des Hautes Etudes en Sciences
Sociales, Paris
Papakostas A, Tollis IG (1998) Algorithms for area-efficient orthogonal drawings. Comput Geom Theory
Appl 9:83–110
Papamanthou C, Tollis IG (2007) Applications of parameterized st -orientations in graph drawings. In:
Proceedings of 13th international symposium on graph drawing. Lecture notes in computer science,
vol 3843. Springer, Berlin, pp 355–367
Rosenstiehl P, Tarjan RE (1986) Rectilinear planar layouts and bipolar orientations of planar graphs. Discrete Comput Geom 1:343–353
Schnyder W (1989) Planar graphs and poset dimension. Order 5:323–343
Tamassia R, Tollis IG (1986) An unified approach to visibility representations of planar graphs. Discrete
Comput Geom 1:321–341
Tarjan R (1986) Two streamlined depth-first search algorithms. Fundam Inform 9:85–94
Zhang H, He X (2005) New theoretical bounds of visibility representation of plane graphs. In: Proceedings
of GD’2004. Lecture notes in computer science, vol 3383. Springer, Berlin, pp 425–430
Zhang H, He X (2006) Nearly optimal visibility representations of plane graphs. In: Proceedings of
ICALP’06. Lecture notes in computer science, vol 4051. Springer, Berlin, pp 407–418