title: An optimal algorithm for computing all subtree repeats in trees.
abstract: Given a labelled 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 labelled 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/neighbours) 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 unlabelled trees.
authors.affiliation: Heidelberg Institute for Theoretical Studies, , 69118 Heidelberg, Germany.
authors.forename: T
authors.initials: T
authors.lastname: Flouri
authors.forename: K
authors.initials: K
authors.lastname: Kobert
authors.forename: S P
authors.initials: SP
authors.lastname: Pissis
authors.forename: A
authors.initials: A
authors.lastname: Stamatakis
keywords: subtree repeats; tree data structures; unrooted unordered labelled trees
references.citation: Bioinformatics. 2006 Nov 1;22(21):2688-90
references.pmid: 16928733
references.citation: Syst Biol. 2010 May;59(3):307-21
references.pmid: 20525638
references.citation: J Mol Evol. 1981;17(6):368-76
references.pmid: 7288891