哈希 hash
hi=j=1∑isj×pi−j+1
for (int i = 1; i <= n; i++) h[i] = (h[i - 1] * p + s[i]) % mod;
hl,r=j=l∑rsj×pr−j+1hl−1=j=1∑l−1sj×pl−jhr=j=1∑rsj×pr−j+1pl−jpr−j+1=pr−l+1hl,r=hr−hl−1×pr−l+1
- 将
h2 拼接在
h1 后的 hash 值
h=h1+h2×psize(h1)
- 比较
h1 和
h2 的字典序大小
二分找到第一位不相等的,用 hash 来 check。
O(logn)
接下来是没有讲的内容