An optimal algorithm for scanning all spanning trees of undirected graphs

被引:59
作者
Shioura, A
Tamura, A
Uno, T
机构
[1] UNIV ELECTROCOMMUN,DEPT COMP SCI & INFORMAT MATH,CHOFU,TOKYO 182,JAPAN
[2] TOKYO INST TECHNOL,DEPT SYST SCI,MEGURO KU,TOKYO 152,JAPAN
关键词
optimal algorithm; spanning trees; undirected graphs;
D O I
10.1137/S0097539794270881
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Let G be an undirected graph with V vertices and E edges. Many algorithms have been developed for enumerating all spanning trees in G. Most of the early algorithms use a technique called ''backtracking.'' Recently, several algorithms using a different technique have been proposed by Kapoor and Ramesh (1992), Matsui (1993), and Shioura and Tamura (1993). They find a new spanning tree by exchanging one edge of a current one. This technique has the merit of enabling us to compress the whole output of all spanning trees by outputting only relative changes of edges. Kapoor and Ramesh first proposed an O(N + V + E)-time algorithm by adopting such a ''compact'' output, where N is the number of spanning trees. Another algorithm with the same time complexity was constructed by Shioura and Tamura. These are optimal in the sense of time complexity but not in terms of space complexity because they take O(VE) space. We refine Shioura and Tamura's algorithm and decrease the space complexity from O(VE) to O(V + E) while preserving the time complexity. Therefore, our algorithm is optimal in the sense of both time and space complexities.
引用
收藏
页码:678 / 692
页数:15
相关论文
共 10 条
[1]   Reverse search for enumeration [J].
Avis, D ;
Fukuda, K .
DISCRETE APPLIED MATHEMATICS, 1996, 65 (1-3) :21-46
[2]   A PIVOTING ALGORITHM FOR CONVEX HULLS AND VERTEX ENUMERATION OF ARRANGEMENTS AND POLYHEDRA [J].
AVIS, D ;
FUKUDA, K .
DISCRETE & COMPUTATIONAL GEOMETRY, 1992, 8 (03) :295-313
[3]   A BASIS ENUMERATION ALGORITHM FOR LINEAR-SYSTEMS WITH GEOMETRIC APPLICATIONS [J].
AVIS, D ;
FUKUDA, K .
APPLIED MATHEMATICS LETTERS, 1991, 4 (05) :39-42
[4]   FINDING ALL SPANNING TREES OF DIRECTED AND UN-DIRECTED GRAPHS [J].
GABOW, HN ;
MYERS, EW .
SIAM JOURNAL ON COMPUTING, 1978, 7 (03) :280-287
[5]   ALGORITHMS FOR ENUMERATING ALL SPANNING-TREES OF UNDIRECTED AND WEIGHTED GRAPHS [J].
KAPOOR, S ;
RAMESH, H .
SIAM JOURNAL ON COMPUTING, 1995, 24 (02) :247-265
[6]  
MATSUI T, 1993, ALGORITHM FINDING SP
[7]   A SIMPLE ALGORITHM FOR LISTING ALL TREES OF A GRAPH [J].
MINTY, GJ .
IEEE TRANSACTIONS ON CIRCUIT THEORY, 1965, CT12 (01) :120-&
[8]  
Read R. C., 1975, Networks, V5, P237
[9]   EFFICIENTLY SCANNING ALL SPANNING-TREES OF AN UNDIRECTED GRAPH [J].
SHIOURA, A ;
TAMURA, A .
JOURNAL OF THE OPERATIONS RESEARCH SOCIETY OF JAPAN, 1995, 38 (03) :331-344
[10]  
Tarjan R., 1971, Conference record 1971 12th annual symposium on switching and automata theory, P114, DOI 10.1137/0201010