字符串处理
文章平均质量分 73
NOTTME
这个作者很懒,什么都没留下…
展开
-
KMP算法
求模式值的模板函数。 int next[100000]; int j=0,k=-1; next[0]=-1; while (j!=m) { if (k==-1 || B[j]==B[k]) { j++; k++; if (B[j]!=B[k]) next[j]=k; else next[转载 2013-11-14 15:00:50 · 674 阅读 · 0 评论 -
Manacher算法:最长回文子串O(n)
void pk() { int i; int mx = 0; int id; for(i=1; i<n; i++) { if( mx > i ) p[i] = MIN( p[2*id-i], mx-i ); else p[i] = 1; for(;原创 2014-05-20 20:05:40 · 625 阅读 · 0 评论 -
Sicily1282(KMP算法)
注意母串的长度要开大一点。 #include #include using namespace std; int main() { int n,m; while (scanf("%d",&m)!=EOF) { int i; int A[1000000],B[100000]; for (i=0;i<=m-1;i++) scanf("%d",&B[i]);原创 2013-11-14 14:58:36 · 929 阅读 · 0 评论 -
HDU1251(Trie树入门)
注意new的时候要初始化。 #include #include #include #include #include #include using namespace std; struct node { int total; struct node *next[26]; node() { total=0; memse原创 2014-05-26 20:36:51 · 463 阅读 · 0 评论 -
POJ3630(Trie树)
#include #include #include #include #include #include #include #include #include using namespace std; struct node { bool flag; int next[10]; }R[500005]; char str[10005][15]; int length[10原创 2014-05-27 23:56:55 · 552 阅读 · 0 评论