An O(n(1.75)) algorithm for L(2,1)-labeling of trees
An L(2, 1)-labeling of a graph G is an assignment f from the vertex set V(G) to the set of nonnegative integers such that [f (x) - f (y)] >= 2 if x and y are adjacent and [f (x) - f (y)] >= 1 if x and y are at distance 2 for all x and y in V(G). A k-L(2, 1)-labeling is an L(2, 1)-labeling f : V(G) -> {0, ... , k}, and the L(2, 1)-labeling problem asks the minimum k, which we denote by lambda(G), among all possible L(2, 1)-labelings. It is known that this problem is NP-hard even for graphs of treewidth 2. Tree is one of a few classes for which the problem is polynomially solvable, but still only an O(Delta(4.5)n) time algorithm for a tree T has been known so far, where Delta is the maximum degree of T and n = vertical bar V(T)vertical bar. In this paper, we first show that an existent necessary condition for lambda(T) = Delta + 1 is also sufficient for a tree T with Delta = Omega(root n), which leads to a linear time algorithm for computing lambda(T) under this condition. We then show that lambda(T) can be computed in O(Delta(1.5)n) time for any tree T. Combining these, we finally obtain an O(n(1.75)) time algorithm, which substantially improves upon previously known results. (C) 2009 Elsevier B.V. All rights reserved.
l(2,1)-labeling frequency/channel assignment graph algorithm vertex coloring