询问后缀自动机的复杂度证明
查看原帖
询问后缀自动机的复杂度证明
128239
C20203030楼主2020/12/12 10:01

蒟蒻刚刚看懂后缀自动机,但是有一个小地方的复杂度一直不理解。

这个地方为什么是 O(n)O(n) 的(来自第二篇题解):

for(;p&&dian[p].ch[c]==q;p=dian[p].fa)dian[p].ch[c]=nq;

如果我们现在是修改了 ppch[c]ch[c] ,以后又修改了 fa[p]fa[p]ch[c]ch[c] ...... 他们的赋值都是要一直访问整条树上的链的,那复杂度不是 O(n2)O(n^2) 的吗?

2020/12/12 10:01
加载中...