萌新刚学后缀数组,在 OI Wiki O(n) 求 height 数组代码实现中,有如下一段代码:
其中 if (k) --k; 可以改成 k=0; 吗?如果不可以,是为什么呢?
if (k) --k;
k=0;
for (i = 1, k = 0; i <= n; ++i) { if (rk[i] == 0) continue; if (k) --k; while (s[i + k] == s[sa[rk[i] - 1] + k]) ++k; height[rk[i]] = k; }