Abstract.
We present an O(NV + V 3 ) time algorithm for enumerating all spanning trees of a directed graph. This improves the previous best known bound of O(NE + V+E) [1] when V 2 =o(N) , which will be true for most graphs. Here, N refers to the number of spanning trees of a graph having V vertices and E edges. The algorithm is based on the technique of obtaining one spanning tree from another by a series of edge swaps. This result complements the result in the companion paper [3] which enumerates all spanning trees in an undirected graph in O(N+V+E) time.
Similar content being viewed by others
Author information
Authors and Affiliations
Additional information
Received September 11, 1997; revised March 6, 1998.
Rights and permissions
About this article
Cite this article
Kapoor, S., Ramesh, H. An Algorithm for Enumerating All Spanning Trees of a Directed Graph . Algorithmica 27, 120–130 (2000). https://doi.org/10.1007/s004530010008
Issue Date:
DOI: https://doi.org/10.1007/s004530010008