Midterm Exam. (Special topics on graph algorithms)
Instructor: Kun-Mao ChaoTA: Hsiao-Fei Liu April 20, 2005
Unless specified explicitly, a graph G or a tree T is assumed to be simple and undirected, and the edge weights are nonnegative.
1. (10%) Assume the vertex set V = {1, 2, 3, 4, 5, 6, 7}. Decode the following Pr¨ufer sequences: (a) P = (5, 4, 3, 2, 1), and (b) P = (1, 1, 1, 1, 1).
2. (10%) Prove that a shortest-paths tree rooted at the median of a graph is a 2-approximation of a minimum routing cost spanning tree of the graph.
3. (10%) Let e be an edge of a path separator (i.e., a minimal 1/3-separator) of T with n vertices. Give the lower bound and upper bound of the routing load of e, denoted by l(T, e).
4. (10%) Show that if P is a path separator of T with an n-vertex set V , then
C(T ) ≥ 4n 3 X v∈V dT(v, P ) +4n 2 9 w(P ).
5. (10%) Let P be a path separator of T . Show that a centroid must be in V (P ).
6. (10%) (a) Give a tree with two centers and one centroid. (b) Give a tree with one center and two centroids.
7. (15%) We are given a tree T with positive edge weights. (a) Suppose that SPT(v1, v2)
is a diameter of T and r is any vertex of T . Show that for any vertex x, dT(x, r) ≤ max{dT(r, v1), dT(r, v2)}. (b) Show that any center must be included in all diameters.
8. (10%) A well-known method to approximate a Steiner minimal trees (SMT) is to use a minimal spanning tree (MST). First we construct the metric closure on L, i.e., a complete graph with vertices L and edge weights equal to the shortest path lengths. Then we find an MST on the closure, in which each edge corresponds to one shortest path on the original graph. Finally the MST is transformed back to a Steiner tree by replacing each edge with the shortest path and some straightforward postprocessing to remove any possible cycle. Show that this procedure finds a 2-approximation of an SMT.
9. (15%) Let r : V → Z0+ be a given vertex weight function. The sum-requirement
communica-tion (or s.r.c. in abbreviacommunica-tion) cost of a tree T is defined by Cs(T ) =Pu,v(r(u)+r(v))dT(u, v).
For a vertex set U , we use r(U ) to denote Pu∈Ur(u), and r(H) = r(V (H)) for a graph H. The r-centroid of a tree T is a vertex m ∈ V (T ) such that if we remove m, then r(H) ≤ r(T )/2 for any branch H. Define the s.r.c. routing load on the edge e to be ls(T, r, e) = 2(|V (T1)|r(T2) + |V (T2)|r(T1)), where T1 and T2 are the two subgraphs obtained by removing e from T . Let x1 and x2 denote a centroid and an r-centroid of T , respectively.
Let P = SPT(x1, x2) be the path between the two vertices on the tree. If x1 and x2 are the
same vertex, P contains only one vertex. Show that for any edge e ∈ E(P ), the s.r.c load
ls(T, r, e) ≥ nR, where R = r(T ).