Tree Contractions and Evolutionary Trees

  • Authors:
  • Ming-Yang Kao

  • Affiliations:
  • -

  • Venue:
  • SIAM Journal on Computing
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

An evolutionary tree is a rooted tree where each internal vertex has at least two children and where the leaves are labeled with distinct symbols representing species. Evolutionary trees are useful for modeling the evolutionary history of species. An agreement subtree of two evolutionary trees is an evolutionary tree which is also a topological subtree of the two given trees. We give an algorithm to determine the largest possible number of leaves in any agreement subtree of two trees T1 and T2 with n leaves each. If the maximum degree d of these trees is bounded by a constant, the time complexity is O(n log2n) and is within a log n factor of optimal. For general d, this algorithm runs in O(nd2 log d log2 n) time or alternatively in $O(nd\sqrt{d}\log^3{n})$ time.