码迷,mamicode.com
首页 > 其他好文 > 详细

z_algorithm

时间:2018-10-15 14:37:58      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:while   线性   第一个   code   int   style   span   ++   ==   

//对于字符串a的每个后缀,匹配它与a的第一个后缀的最长公共前缀,复杂度线性
void
z_algorithm(char *a,int len) { z[0]=len; for(int i=1,j=1,k;i<len;i=k) { if(j<i)j=i; while(j<len && a[j]==a[j-i])++j; z[i]=j-i; k=i+1; while(k+z[k-i]<j)z[k]=z[k-i],++k; } }

 

z_algorithm

标签:while   线性   第一个   code   int   style   span   ++   ==   

原文地址:https://www.cnblogs.com/dyzll/p/9789983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!