An O(n3)-Time Algorithm for Tree Edit Distance
Erik D. Demaine, Shay Mozes, Benjamin Rossman, Oren Weimann
Abstract
The edit distance between two ordered trees with vertex labels is the minimum cost of transforming one tree into the other by a sequence of elementary operations consisting of deleting and relabeling existing nodes, as well as inserting new nodes. In this paper, we present a worst-case O(n3)-time algorithm for this problem, improving the previous best O(n3 n)-time algorithm~Klein. Our result requires a novel adaptive strategy for deciding how a dynamic program divides into subproblems (which is interesting in its own right), together with a deeper understanding of the previous algorithms for the problem. We also prove the optimality of our algorithm among the family of decomposition strategy algorithms--which also includes the previous fastest algorithms--by tightening the known lower bound of Ω(n22 n)~Touzet to Ω(n3), matching our algorithm's running time. Furthermore, we obtain matching upper and lower bounds of Θ(n m2 (1 + nm)) when the two trees have different sizes m and~n, where m < n.
Create a lesson
Related papers
State Evolution and Universality of Iterated Linear Programs for the Binary Perceptron
Jianan Zhang, Shuangping Li
Metric TSP in Sublinear Time: Breaking Two Approximation
Amir Azarmehr, Soheil Behnezhad
Testing Implies Distance Estimation with Polynomial Loss
Gaia Carenini, Cameron Seth
Online Metric Matching with Unknown i.i.d. Arrivals
Tsubasa Harada
Incremental Open Addressing Has No Time-Space Tradeoff
Martín Farach-Colton, Andrew Krapivin, William Kuszmaul
A Constant-Factor Approximation for Capacitated Facility Location with Outliers
Rajni Dabas