计算机科学>数据结构和算法
职务: 加权编辑距离计算:字符串、树和堤坝
摘要: 给定字母表$\Sigma$上两个长度为$n$的字符串,以及它们的编辑距离的上界$k$,Myers(Algorithmica'86)和Landau and Vishkin(JCSS'88)的算法计算$\mathcal{O}(n+k^2)$time中的未加权字符串编辑距离。 迄今为止,它仍然是精确编辑距离计算的最快算法,并且在强指数假设(STOC’15)下是最优的。 多年来,这个结果激发了许多发展,包括字符串编辑距离的快速近似算法,以及用于树和Dyck编辑距离推广的类似$\tilde{\mathcal{O}}(n+$poly$(k))$-time算法。 令人惊讶的是,所有这些结果只适用于未加权的实例。 虽然未加权编辑距离在理论上是基本的,但几乎所有实际应用程序都需要加权编辑距离,即不同的权重被分配给不同的编辑操作,并且可能会因正在编辑的字符而异。 给定一个权重函数$w:\Sigma\cup\{\varepsilon\}\times\Sigma \cup\{\varesilon\}\rightarrow\mathbb {R}_ {\ge0}$(这样,$w(a,a)=0$和$w(a,b)\ge1$代表所有$a,b\in\Sigma\cup\{\varepsilon\}$和$a\neb$),目标是找到一种使编辑总权重最小化的对齐方式。 除了香草$\mathcal{O}(n^2)$-time动态编程算法及其几乎微不足道的$\mathcal{O{(nk)$-teme实现之外,上述关于未加权编辑距离的发展都不适用于加权变量。 在本文中,我们提出了第一个$\mathcal{O}(n+$poly$(k))$-time算法,该算法精确计算加权字符串编辑距离,从而弥合了我们对未加权编辑距离和加权编辑距离的理解之间的根本差距。 然后,我们将此结果推广到加权树和Dyck编辑距离,这导致了一种确定性算法,该算法改进了之前关于未加权树编辑距离的工作。