数据结构
oldz
之前觉得写博客没什么看于是就没有更新了,博客一直是写了直接放U盘里,前几天看了一下自己的几篇博客浏览量竟然上了四位数,非常的开心,以后会持续更新博客的,如果我的博客对您有帮助,烦请留言告知,非常感谢,这是我最大的动力
展开
-
由SS表构造GS表(O(m))
暴力构造: for (unsigned int j = 0; j < m; j++) gs[j] = m; //初始化 for (ui j = 0; j < m; j++) if (ss[j] == j + 1) for (ui i = 0; i < m - j - 1; i++) gs[i] = min(gs[i], m - j - 1); else gs[m - ss[j] - 1] = min(gs[m - ss[j] - 1], m - j - 1); for (原创 2021-11-20 13:04:44 · 565 阅读 · 0 评论 -
kmp优化正确性证明
邓俊辉老师的课上给出了一种普遍的kmp算法优化,但是没有给出这种优化的正确性证明。或许这种正确性是显而易见的,但这里还是研究了一下这个算法的正确性问题。 int* buildNext(char* P) { int n = strlen(P); int* next = new int[n]; int i = 0, j = next[0] = -1; while (i < n - 1) { if (j < 0 || P[i] == P[j]) { ++i; ++j;原创 2020-09-02 18:54:12 · 757 阅读 · 0 评论