An Optimal Algorithm for Computing All Subtree Repeats in Trees

  • Tomáš Flouri
  • Kassian Kobert
  • Solon P. Pissis
  • Alexandros Stamatakis
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8288)


Given a labeled tree T, our goal is to group repeating subtrees of T into equivalence classes with respect to their topologies and the node labels. We present an explicit, simple, and time-optimal algorithm for solving this problem for unrooted unordered labeled trees, and show that the running time of our method is linear with respect to the size of T. By unordered, we mean that the order of the adjacent nodes (children/neighbors) of any node of T is irrelevant. An unrooted tree T does not have a node that is designated as root and can also be referred to as an undirected tree. We show how the presented algorithm can easily be modified to operate on trees that do not satisfy some or any of the aforementioned assumptions on the tree structure; for instance, how it can be applied to rooted, ordered or unlabeled trees.


Height Level Label Tree Unrooted Tree Repeat Class Unordered Tree 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: principles, techniques, and tools, 2nd edn. Addison-Wesley (2006)Google Scholar
  2. 2.
    Barstow, D.R., Shrobe, H.E., Sandewall, E.: Interactive Programming Environments. McGraw-Hill, Inc. (1984)Google Scholar
  3. 3.
    Chor, B., Tuller, T.: Finding a maximum likelihood tree is hard. Journal of ACM 53(5), 722–744 (2006)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Christou, M., Crochemore, M., Flouri, T., Iliopoulos, C.S., Janoušek, J., Melichar, B., Pissis, S.P.: Computing all subtree repeats in ordered trees. Information Processing Letters 112(24), 958–962 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Christou, M., Crochemore, M., Flouri, T., Iliopoulos, C.S., Janoušek, J., Melichar, B., Pissis, S.P.: Computing all subtree repeats in ordered ranked trees. In: Grossi, R., Sebastiani, F., Silvestri, F. (eds.) SPIRE 2011. LNCS, vol. 7024, pp. 338–343. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  6. 6.
    Felsenstein, J.: Evolutionary trees from DNA sequences: a maximum likelihood approach. Journal of Molecular Evolution 17(6), 368–376 (1981)CrossRefGoogle Scholar
  7. 7.
    Felsenstein, J.: Inferring phylogenies. Sinauer Associates (2003)Google Scholar
  8. 8.
    Ferdinand, C., Seidl, H., Wilhelm, R.: Tree automata for code selection. Acta Inf. 31, 741–760 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Guindon, S., Dufayard, J.F., Lefort, V., Anisimova, M., Hordijk, W., Gascuel, O.: New Algorithms and Methods to Estimate Maximum-Likelihood Phylogenies: Assessing the Performance of PhyML 3.0. Systematic Biology 59(3), 307–321 (2010)CrossRefGoogle Scholar
  10. 10.
    Harary, F.: Graph Theory. Addison Wesley Publishing Company (1994)Google Scholar
  11. 11.
    Hoffmann, C.M., O’Donnell, M.J.: Programming with equations. ACM Trans. Program. Lang. Syst. 4, 83–112 (1982)CrossRefzbMATHGoogle Scholar
  12. 12.
    Hudak, P.: Conception, evolution, and application of functional programming languages. ACM Computing Surveys 21, 359–411 (1989)CrossRefGoogle Scholar
  13. 13.
    Knuth, D.E., Bendix, P.B.: Simple word problems in universal algebra. In: Leech, J. (ed.) Computational Problems in Abstract Algebra, pp. 263–297. Pergamon Press (1970)Google Scholar
  14. 14.
    Mauri, G., Pavesi, G.: Algorithms for pattern matching and discovery in RNA secondary structure. Theoretical Computer Science 335(1), 29–51 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Stamatakis, A.: RAxML-VI-HPC: maximum likelihood-based phylogenetic analyses with thousands of taxa and mixed models. Bioinformatics 22(21), 2688–2690 (2006)CrossRefGoogle Scholar
  16. 16.
    Yang, Z.: Computational Molecular Evolution. Oxford University Press, Oxford (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Tomáš Flouri
    • 1
  • Kassian Kobert
    • 1
  • Solon P. Pissis
    • 1
    • 2
  • Alexandros Stamatakis
    • 1
    • 3
  1. 1.Heidelberg Institute for Theoretical StudiesGermany
  2. 2.Florida Museum of Natural HistoryUniversity of FloridaUSA
  3. 3.Institute for Theoretical InformaticsKarlsruhe Institute of TechnologyKarlsruheGermany

Personalised recommendations