Faster Algorithms for the Maximum Common Subtree Isomorphism Problem

Authors Andre Droschinsky, Nils M. Kriege, Petra Mutzel

Thumbnail PDF


  • Filesize: 0.54 MB
  • 14 pages

Document Identifiers

Author Details

Andre Droschinsky
Nils M. Kriege
Petra Mutzel

Cite AsGet BibTex

Andre Droschinsky, Nils M. Kriege, and Petra Mutzel. Faster Algorithms for the Maximum Common Subtree Isomorphism Problem. In 41st International Symposium on Mathematical Foundations of Computer Science (MFCS 2016). Leibniz International Proceedings in Informatics (LIPIcs), Volume 58, pp. 33:1-33:14, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2016)


The maximum common subtree isomorphism problem asks for the largest possible isomorphism between subtrees of two given input trees. This problem is a natural restriction of the maximum common subgraph problem, which is NP-hard in general graphs. Confining to trees renders polynomial time algorithms possible and is of fundamental importance for approaches on more general graph classes.Various variants of this problem in trees have been intensively studied. We consider the general case, where trees are neither rooted nor ordered and the isomorphism is maximum w.r.t. a weight function on the mapped vertices and edges. For trees of order n and maximum degree Delta our algorithm achieves a running time of O(n^2*Delta) by exploiting the structure of the matching instances arising as subproblems. Thus our algorithm outperforms the best previously known approaches. No faster algorithm is possible for trees of bounded degree and for trees of unbounded degree we show that a further reduction of the running time would directly improve the best known approach to the assignment problem. Combining a polynomial-delay algorithm for the enumeration of all maximum common subtree isomorphisms with central ideas of our new algorithm leads to an improvement of its running time from O(n^6+T*n^2) to O(n^3+T*n*Delta), where n is the order of the larger tree, T is the number of different solutions, and Delta is the minimum of the maximum degrees of the input trees. Our theoretical results are supplemented by an experimental evaluation on synthetic and real-world instances.
  • MCS
  • maximum common subtree
  • enumeration algorithms
  • maximum weight bipartite matchings


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Amir Abboud, Arturs Backurs, Thomas Dueholm Hansen, Virginia Vassilevska Williams, and Or Zamir. Subtree isomorphism revisited. In Proceedings of the Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA '16, pages 1256-1271. SIAM, 2016. Google Scholar
  2. Tatsuya Akutsu and Takeyuki Tamura. A polynomial-time algorithm for computing the maximum common connected edge subgraph of outerplanar graphs of bounded degree. Algorithms, 6(1):119-135, 2013. URL:
  3. Tatsuya Akutsu, Takeyuki Tamura, Avraham A. Melkman, and Atsuhiro Takasu. On the complexity of finding a largest common subtree of bounded degree. In Leszek Gasieniec and Frank Wolter, editors, Fundamentals of Computation Theory, volume 8070 of LNCS, pages 4-15. Springer, 2013. URL:
  4. Moon Jung Chung. O(n^2.5) time algorithms for the subgraph homeomorphism problem on trees. Journal of Algorithms, 8(1):106-112, 1987. URL:
  5. Donatello Conte, Pasquale Foggia, Carlo Sansone, and Mario Vento. Thirty years of graph matching in pattern recognition. International Journal of Pattern Recognition and Artificial Intelligence, 2004. URL:
  6. Erik D. Demaine, Shay Mozes, Benjamin Rossman, and Oren Weimann. An optimal decomposition algorithm for tree edit distance. ACM Trans. Algorithms, 6(1):2:1-2:19, December 2009. URL:
  7. Andre Droschinsky, Bernhard Heinemann, Nils Kriege, and Petra Mutzel. Enumeration of maximum common subtree isomorphisms with polynomial-delay. In Hee-Kap Ahn and Chan-Su Shin, editors, Algorithms and Computation (ISAAC), LNCS, pages 81-93. Springer, 2014. URL:
  8. Ran Duan and Hsin-Hao Su. A scaling algorithm for maximum weight matching in bipartite graphs. In Proceedings of the Twenty-third Annual ACM-SIAM Symposium on Discrete Algorithms, SODA '12, pages 1413-1424. SIAM, 2012. Google Scholar
  9. Hans-Christian Ehrlich and Matthias Rarey. Maximum common subgraph isomorphism algorithms and their applications in molecular science: a review. Wiley Interdisciplinary Reviews: Computational Molecular Science, 1(1):68-79, 2011. URL:
  10. Harold N. Gabow and Robert Endre Tarjan. Faster scaling algorithms for network problems. SIAM J. Comput., 18(5):1013-1036, 1987. Google Scholar
  11. Arvind Gupta and Naomi Nishimura. Finding largest subtrees and smallest supertrees. Algorithmica, 21:183-210, 1998. URL:
  12. Ming-Yang Kao, Tak-Wah Lam, Wing-Kin Sung, and Hing-Fung Ting. An even faster and more unifying algorithm for comparing trees via unbalanced bipartite matchings. Journal of Algorithms, 40(2):212-233, 2001. URL:
  13. Nils Kriege, Florian Kurpicz, and Petra Mutzel. On maximum common subgraph problems in series-parallel graphs. In Kratochvíl Jan, Mirka Miller, and Dalibor Froncek, editors, IWOCA 2014, volume 8986 of LNCS, pages 200-212. Springer, 2014. URL:
  14. Nils Kriege and Petra Mutzel. Finding maximum common biconnected subgraphs in series-parallel graphs. In Erzsébet Csuhaj-Varjú, Martin Dietzfelbinger, and Zoltán Ésik, editors, MFCS 2014, volume 8635 of LNCS, pages 505-516. Springer, 2014. URL:
  15. David W. Matula. Subtree isomorphism in O(n^5/2). In P. Hell B. Alspach and D.J. Miller, editors, Algorithmic Aspects of Combinatorics, volume 2 of Annals of Discrete Mathematics, pages 91-106. Elsevier, 1978. URL:
  16. Matthias Rarey and J.Scott Dixon. Feature trees: A new molecular similarity measure based on tree matching. Journal of Computer-Aided Molecular Design, 12(5):471-490, 1998. URL:
  17. Steven W. Reyner. An analysis of a good algorithm for the subtree problem. SIAM J. Comput., 6(4):730-732, 1977. Google Scholar
  18. Leander Schietgat, Jan Ramon, and Maurice Bruynooghe. A polynomial-time maximum common subgraph algorithm for outerplanar graphs and its application to chemoinformatics. Annals of Mathematics and Artificial Intelligence, 69(4):343-376, 2013. URL:
  19. Ron Shamir and Dekel Tsur. Faster subtree isomorphism. Journal of Algorithms, 33(2):267-280, 1999. URL:
  20. A. Torsello, D. Hidovic-Rowe, and M. Pelillo. Polynomial-time metrics for attributed trees. IEEE Transactions on Pattern Analysis and Machine Intelligence, 27(7):1087-1099, July 2005. URL:
  21. Takeaki Uno. Algorithms for enumerating all perfect, maximum and maximal matchings in bipartite graphs. In Algorithms and Computation (ISAAC), volume 1350 of LNCS, pages 92-101. Springer, 1997. Google Scholar
  22. Gabriel Valiente. Algorithms on Trees and Graphs. Springer-Verlag, Berlin, 2002. Google Scholar
  23. Rakesh M. Verma and Steven W. Reyner. An analysis of a good algorithm for the subtree problem, corrected. SIAM J. Comput., 18(5):906-908, 1989. Google Scholar