不确定序列的在线模式匹配及应用
1. 标准和加权字符串工具
1.1 后缀树
后缀树是一种计算工具,非空标准字符串 $y$ 的后缀树记为 $T(y)$。给定长度为 $n$ 的非空字符串 $y$,可以在 $O(n)$ 的时间和空间内构建 $T(y)$。使用 $T(y)$ 可以在 $O(m)$ 的时间内检查长度为 $m$ 的字符串 $x$ 是否出现在 $y$ 中。
1.2 加权字符串的基本操作
设给定累积权重阈值 $1/z$,有以下操作:
- VER1(u, v, z) :如果 $u = z v$ 则返回 true,否则返回 false。
- VER2(u, v, z) :如果 $u =_z v$ 则返回 true,否则返回 false。
- VER3(u, v, z, k) :用于检查 $u = {z,k} v$,实现代码如下:
def VER3(u, v, z, k):
v_prime = H(v)
A = []
for i in range(len(u)):
if u[i] != v_prime[i]:
if pi(u[i]) == 0:
u[i] = v_prime[i]
k = k - 1
if k < 0:
超级会员免费看
订阅专栏 解锁全文
2507

被折叠的 条评论
为什么被折叠?



