Abstract
A spanning tree T of a connected, undirected graph G is an acyclic subgraph having all vertices and a minimal number of edges of G connecting those vertices. Enumeration of all possible spanning trees of undirected graphs is a well-studied problem. Solutions exist for enumeration for both weighted and unweighted graphs. However, these solutions are either space or time efficient. In this paper, we give an algorithm for enumerating all spanning trees in a plane 3-tree that is optimal in both time and space. Our algorithm exploits the structure of a plane 3-tree for a conceptually simpler alternative to existing general-purpose algorithms and takes \(\mathcal {O}(n + m + \tau )\) time and \(\mathcal {O}(n)\) space, where the given graph has n vertices, m edges, and \(\tau \) spanning trees. This is a substantial improvement in both time and space complexity compared to the best-known algorithms for general graphs. We also propose a parallel algorithm for enumerating spanning trees of a plane 3-tree that has \(\mathcal {O}(n + m + \frac{n\tau }{p})\) time and \(\mathcal {O}(\frac{n\tau }{p})\) space complexities for p parallel processors. This second algorithm is useful when storing the spanning trees is important.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Brooks, R., Smith, C., Stone, A., Tutte, W.: Determinants and current flows in electric networks. Discret. Math. 100(1), 291–301 (1992). https://doi.org/10.1016/0012-365X(92)90648-Y
Char, J.: Generation of trees, two-trees, and storage of master forests. IEEE Trans. Circ. Theory 15(3), 228–238 (1968). https://doi.org/10.1109/TCT.1968.1082817
Chen, W.K.: Topological analysis for active networks. IEEE Trans. Circ. Theory 12(1), 85–91 (1965). https://doi.org/10.1109/TCT.1965.1082396
Deo, N.: Graph Theory with Applications to Engineering and Computer Science. Prentice Hall Series in Automatic Computation, Prentice-Hall Inc., USA (1974)
Gabow, H.N., Myers, E.W.: Finding all spanning trees of directed and undirected graphs. SIAM J. Comput. 7(3), 280–287 (1978). https://doi.org/10.1137/0207024
Hakimi, S., Green, D.: Generation and realization of trees and k-trees. IEEE Trans. Circ. Theory 11(2), 247–255 (1964). https://doi.org/10.1109/TCT.1964.1082276
Hakimi, S.: On trees of a graph and their generation. J. Franklin Inst. 272(5), 347–359 (1961). https://doi.org/10.1016/0016-0032(61)90036-9
Kapoor, S., Ramesh, H.: Algorithms for enumerating all spanning trees of undirected and weighted graphs. SIAM J. Comput. 24(2), 247–265 (1995). https://doi.org/10.1137/S009753979225030X
Matsui, T.: An algorithm for finding all the spanning trees in undirected graphs (1998)
Mayeda, W., Seshu, S.: Generation of trees without duplications. IEEE Trans. Circ. Theory 12(2), 181–185 (1965). https://doi.org/10.1109/TCT.1965.1082432
Nagamochi, H., Ibaraki, T.: A linear-time algorithm for finding a sparse k-connected spanning subgraph of a k-connected graph. Algorithmica 7(5 &6), 583–596 (1992). https://doi.org/10.1007/BF01758778
Nishat, R.I., Mondal, D., Rahman, M.S.: Point-set embeddings of plane 3-trees. In: Brandes, U., Cornelsen, S. (eds.) GD 2010. LNCS, vol. 6502, pp. 317–328. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-18469-7_29
Onete, C.E., Onete, M.C.C.: Enumerating all the spanning trees in an un-oriented graph - a novel approach. In: 2010 XIth International Workshop on Symbolic and Numerical Methods, Modeling and Applications to Circuit Design (SM2ACD), pp. 1–5 (2010). https://doi.org/10.1109/SM2ACD.2010.5672365
Rakshit, A., Sarma, S.S., Sen, R.K., Choudhury, A.: An efficient tree-generation algorithm. IETE J. Res. 27(3), 105–109 (1981). https://doi.org/10.1080/03772063.1981.11452333
Read, R., Tarjan, R.: Bounds on backtrack algorithms for listing cycles, paths, and spanning trees. Networks 5(3), 237–252 (1975). https://doi.org/10.1002/net.1975.5.3.237
Shioura, A., Tamura, A.: Efficiently scanning all spanning trees of an undirected graph. J. Oper. Res. Soc. Jpn. 38(3), 331–344 (1995). https://doi.org/10.15807/jorsj.38.331
Acknowledgement
This work is supported by the Basic Research Grant of BUET.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Yanhaona, M.N., Nomaan, A.S., Rahman, M.S. (2023). Efficiently Enumerating All Spanning Trees of a Plane 3-Tree. In: Mavronicolas, M. (eds) Algorithms and Complexity. CIAC 2023. Lecture Notes in Computer Science, vol 13898. Springer, Cham. https://doi.org/10.1007/978-3-031-30448-4_26
Download citation
DOI: https://doi.org/10.1007/978-3-031-30448-4_26
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-30447-7
Online ISBN: 978-3-031-30448-4
eBook Packages: Computer ScienceComputer Science (R0)