博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AC自动机算法学习
阅读量:4354 次
发布时间:2019-06-07

本文共 871 字,大约阅读时间需要 2 分钟。

KMP+TRIE

int val[1000100][31],tot;int tr[1000100];int fail[1000100];struct AC_Trie{    void clean(){        tot=0;        memset(val,0,sizeof(val));        memset(tr,0,sizeof(tr));        memset(fail,0,sizeof(fail));    }    void build(){        queue
q; memset(fail,0,sizeof(fail)); while(!q.empty()) q.pop(); for(int i=0;i<26;i++) if(val[0][i]!=0) q.push(val[0][i]); while(!q.empty()){ int u=q.front();q.pop(); for(int i=0;i<26;i++){ if(val[u][i]!=0){ fail[val[u][i]]=val[fail[u]][i]; q.push(val[u][i]); }else{ val[u][i]=val[fail[u]][i]; } } } } void insert(string x){ int len=x.length(),p=0; for(int i=0;i

转载于:https://www.cnblogs.com/yzx1798106406/p/10145223.html

你可能感兴趣的文章
题解 P2799 【国王的魔镜】
查看>>
写写代码,注意注意细节
查看>>
css Backgroud-clip (文字颜色渐变)
查看>>
安装 OpenSSL 工具
查看>>
用长微博工具发布长微博
查看>>
大庆金桥帆软报表案例
查看>>
方维分享系统,个人中心杂志社显示我的、关注的、推荐的数量
查看>>
JavaScript BOM加载事件
查看>>
Java复习总结——详细理解Java反射机制
查看>>
Navicat for MySQL10.1.7注册码
查看>>
Proxy模式
查看>>
读书多些会怎样
查看>>
浏览器好用的技术
查看>>
HDU 2188------巴什博弈
查看>>
tp5任务队列使用supervisor常驻进程
查看>>
Xmind?
查看>>
spring+quartz 实现定时任务三
查看>>
day2-三级菜单
查看>>
java retry_java里面的retry:
查看>>
linux下升级4.5.1版本gcc
查看>>