码迷,mamicode.com
首页 >  
搜索关键字:模式串    ( 684个结果
POJ 3691 DNA repair 基于AC自动机的DP
dp[i][j] 表示长度为 i 的前缀到达第 j 个节点的最小更改数目。 很显然有dp[0][0] = 0; dp[ i ][ j ] = min(dp[ i ][ j ],dp[i-1][k] + (j == k ? 0 : 1)),当且仅当j,k满足下列条件时。 j 不为某条模式串的末节点 且 j 到 root 的由失败指针组成的路径上无末节点。 j 是k的儿子节点 或者 j 的父节...
分类:其他好文   时间:2014-08-17 20:00:12    阅读次数:292
KMP与扩展KMP初探
KMP KMP算法主要用于字符串匹配中的单串匹配 next函数:表示当前字符失配时,应从模式串的第几位开始匹配(越大越好)。即模式串的前缀与以t[i]为结尾的后缀的最长相同部分的长度。 代码如下(pascal) var s,t:string; next,ans:array[0..100] of lo...
分类:其他好文   时间:2014-08-17 12:55:12    阅读次数:234
python 下的crc16计算模块 XCRC16
又一次突然遇到用python处理modbus通信而需要crc16校验的问题,当时在百度上没找到,在google上找到了一个外国人开发的python包,结果安装好了之后发现校验的不正确(可能是使用的模式串不一样,xcrc16的模式串为...
分类:编程语言   时间:2014-08-15 23:53:49    阅读次数:622
hdu 4878 ZCC loves words(AC自动机+dp+矩阵快速幂+中国剩余定理)
hdu 4878 ZCC loves words(AC自动机+dp+矩阵快速幂+中国剩余定理) 题意:给出若干个模式串,总长度不超过40,对于某一个字符串,它有一个价值,对于这个价值的计算方法是这样的,设初始价值为V=1,假如这个串能匹配第k个模式串,则V=V*prime[k]*(i+len[k]),其中prime[k]表示第k个素数,i表示匹配的结束位置,len[k]表示第k个模式串的长度(注...
分类:其他好文   时间:2014-08-14 20:37:19    阅读次数:359
算法学习笔记 KMP算法之 next 数组详解
最近回顾了下字符串匹配 KMP 算法,相对于朴素匹配算法,KMP算法核心改进就在于:待匹配串指针 i 不发生回溯,模式串指针 j 跳转到 next[j],即变为了 j = next[j]. 由此时间复杂度由朴素匹配的 O(m*n) 降到了 O(m+n), 其中模式串长度 m, 待匹配文本串长 n.其中,比较难理解的地方就是 next 数组的求法。...
分类:其他好文   时间:2014-08-14 01:35:27    阅读次数:336
CSU-ACM暑假集训基础组训练赛(4)解题报告
?Problem A SPOJ SUB_PROB AC自动机?题意: 给定一个长为M(M≤100000 )的文本串,和N(N≤1000)个长度不超过2000的模式串,问每个模式串是否在文本串中出现过??几乎和周一课件上的第一个例题一模一样。。?把文本串丢到AC自动机里面去跑。?注意:?1.可能有两个...
分类:其他好文   时间:2014-08-09 13:11:07    阅读次数:381
KMP模板
KMP算法是快速字符串匹配算法,朴素的暴力算法的时间复杂度为O(n*m),而KMP通过对模式串进行相应的处理,能够达到O(m+n)的速度。 我们知道在字符串匹配的时候最消耗时间的就是当匹配到第 i 个位置发现不匹配时,下一次又对模式串进行一次重新匹配,那么假如模式串中有很多相同的字母的话,这样做了很多重复的事情,那么我可以对模式串进行一定的处理,处理处一个对应的数组,让他保存假如这里不匹配是我下...
分类:其他好文   时间:2014-08-05 09:37:19    阅读次数:172
运用kmp算法解决的一些问题的简单题解
学习kmp算法我最后是看的数据结构书上的一本教材学会的。。我觉得kmp相对于普通的BF算法就是避免了很多不必要的匹配,而kmp算法的精髓自然就在于next数组的运用。。。而next数组简而言之就是存储的就是模式串中第j个字符与主串中相应字符“失配”时,在模式串中需要重新和主串中失配的字符相比较的位置。。。我觉得这句概括挺好的。。。 题1: hdu   1711  number   sequen...
分类:其他好文   时间:2014-08-04 14:34:27    阅读次数:277
UVA 1449 - Dominating Patterns(AC自动机)
uva 1449 - Dominating Patterns 题目链接 题意:给定一些模式串,再给一个文本,求这些模式串在文本中出现次数最多的串 思路:AC自动机的模板题目,注意字符串重复的处理 代码: #include #include #include #include #include #include using namespace std; c...
分类:其他好文   时间:2014-08-01 23:19:32    阅读次数:326
UVA 11468 - Substring(AC自动机)
UVA 11468 - Substring 题目链接 题意:给定一些模式串,然后给出一些字母出现的概率,每次随机出现一个字母,要求出这些字母出现L个组成的字符串不包含(即不是它的连续字串)已有模式串的概率 思路:AC自动机,先构造出AC自动机,构造的时候利用next数组的特性,记录下每个位置是否有经过一个单词结点,如果有这个结点就是不能走的结点,那么问题就变成了只能在能走的结点上...
分类:其他好文   时间:2014-08-01 23:08:22    阅读次数:275
684条   上一页 1 ... 64 65 66 67 68 69 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!