共查询到20条相似文献,搜索用时 46 毫秒
1.
一种改进的KMP高效模式匹配算法 总被引:9,自引:0,他引:9
针对KMP算法存在着主串与模式串中多个相同字符重复比较的缺陷,在KMP算法的基础上,给出了一种新的模式匹配算法,该算法不像KMP算法那样向左滑动模式串的指针,而是每次比较字符不匹配时,根据模式串当前字符的特征值k,使主串的指针向前跳跃k个值,且使模式串的指针置于起始位置,开始新一轮的匹配,加快了主串的匹配速度.理论分析和试验证明,该算法需要的比较次数比KMP算法减少将近一半. 相似文献
2.
模式匹配是一种重要的非数值运算,本文对字符串模式匹配算法BF与KMP进行了详细地分析,介绍一个KMP新算法,相对KMP算法而言更简洁易懂。 相似文献
3.
通过对串的前缀、后缀、交迭的介绍,引出了对失败函数的求解,解决了KMP算法中匹配串的移动问题,并提出了各种计算方法.该方法和传统的KMP算法的时间复杂度都为O(m n). 相似文献
4.
模式匹配算法的应用较为广泛,KMP算法是一种性能较高的算法,所以对KMP算法的深入研究能够使模式匹配问题得到较大的改善.在匹配的过程中,从模式匹配算法的子串滑动出发,解决特殊的实际问题.通过特殊子串滑动算法与KMP算法整合的实践,在一定程度上省略了KMP函数的求解过程,提高了模式匹配问题的工作效率,保证了模式匹配问题的具体划分. 相似文献
5.
叶煜 《成都大学学报(自然科学版)》2011,30(3):236-238
分析了几种常用的模式匹配算法,提出一种适合于中文的基于KMP的改进算法,即双向比较模式匹配算法.该算法以KMP算法为基础,引入特征数组以记录模式串尾字符在模式串中出现的位置信息,从而获得模式串在匹配过程中的最大移动距离和最少比较次数.实验结果表明,双向比较模式匹配算法可有效降低匹配次数. 相似文献
6.
通过对字符串模式匹配BF和KMP算法的分析,提出了改进KMP扫描算法的方法,并通过对算法的复杂性进行分析,结果表明:改进后的算法KMPA比算法KMP更有效。 相似文献
7.
提出了一种基于KMP的模式匹配算法,给出了具体的实现方法。在不丢失匹配项的前提下,增大next函数的值,使得模式串向右尽可能得滑动更远的一段距离,忽略不必要的比较。通过实验证明,该方法与传统的方法相比能有效地加快匹配的速度,提高入侵检测的效率。 相似文献
8.
巫喜红 《大庆师范学院学报》2007,27(2):50-52
分析几种模式匹配算法如KMP、BM、RK、SO。通过上机实验对这些算法的匹配时间进行测试,结果表明在这些模式匹配算法中BM算法是速度最快效率最高的算法。 相似文献
9.
对发生失配现象时KMP算法中模式串所构造自动机的处理过程进行了分析,指出了其中状态函数的向后处理存在不足,并对此进行了相应的改进. 相似文献
10.
宋文 《贵州大学学报(自然科学版)》1998,15(2):116-119
本文提出了一个串匹配的新算法,该算法适合于当主串与子串不存在许多“部分匹配”时的情况,它是对串匹配算法中,一般算法和KMP算法的补充。 相似文献
11.
一种快速的多模式字符串匹配算法 总被引:15,自引:0,他引:15
以基于有限自动机的多模式匹配算法(DFSA)为基础,结合Boyer-Moore(BM)和Quick Search(QS)快速单模式匹配算法的优点,提出了一种快速的多模式字符串匹配算法,在一般情况下,该算法不需要匹配目标文本中的每个字符,能充分利用匹配过程中本次匹配不成功的信息和已经匹配成功的信息,跳过尽可能多的字符。实验表明,模式串较短时,本算法所需时间为DFSA算法的1/2-1/3;模式串较长时,本算法所需时间为DFSA算法的1/2-1/3;模式串较长时,其所需时间为DFSA算法的1/3-1/5。 相似文献
12.
在分析BF、KMP和KR等模式匹配算法的基础上提出一种改进的KR算法(IKR),在产生哈希冲突时利用双向比较法进行匹配.实验结果表明,该算法可以快速有效地进行模式匹配. 相似文献
13.
巫喜红 《重庆邮电大学学报(自然科学版)》2014,26(4):551-555
为提高模式匹配算法性能,介绍经典的模式匹配算法Byoer-Moore和Sunday,分析它们改进后的效率,根据分块法的特点,提出一种新的分块模式匹配(block pattern matching,BPM)算法?BPM算法在预处理阶段先确定模式串的首字符在文本串的位置,再确定此字符后长度等于模式串长度的字符是否等于模式串的尾字符,若符合条件,采用单链表存储结构进行存储,在匹配阶段,利用单链表信息进行双向匹配?实验结果表明,BPM算法大大减少了匹配次数和字符比较个数,从而提高匹配效率? 相似文献
14.
对SNORT的原有规则匹配算法BM算法改进,利用规则树实现了BM算法的多模式匹配功能,在跳跃方面主要依靠于最短模式串与规则树首字符重复出现间隔距离双重控制,在首字符不匹配的情况下,移动模式串的最大距离就是前缀树中最短模式串长度,在整个匹配过程中,最大移动距离是由该前缀树中最短模式串的长度决定;而首字符匹配时,最大移动距离是由规则树首字符重复出现间隔距离决定。 相似文献
15.
大字符集语言单模式匹配算法 总被引:1,自引:0,他引:1
分析了大字符集的特点和人类查找字符串的过程,提出了一个新的单模式匹配算法,该算法利用字频和已成功匹配的前、后缀信息对模式串进行预处理。在查找阶段,运用了连续跳跃的思想。实验表明,本算法比其他同类算法更加高效。 相似文献
16.
李映刚 《四川理工学院学报(自然科学版)》2013,26(2):78-81
字符匹配效率是很多计算机应用系统的性能瓶颈,研究设计高效的匹配算法有助于提高相应系统的应用性能。在分析典型Sunday匹配算法的基础上,对其进行了较为有效的改进。改进算法在字符串匹配前先计算模式串的倒序特征值,也就是以此计算出模式串的最后s个字符在本模式串中倒序除自己以外的下一次出现的位置。每一次字符匹配都采用倒序匹配并利用这种匹配的结果,匹配结果结合倒序特征值可以直接决定特征串的下一次位移数。在进行完一次字符匹配后,采用增加一个遍历字符的Sunday算法来遍历模式串以计算下一次位移数,以此尽可能地排除无效匹配。实验结果表明改进算法的效率比Sunday算法有一定提高。 相似文献
17.
母泽平 《重庆工商大学学报(自然科学版)》2014,(8):79-82
分析了BM和KMP算法特点,阐述了字符串匹配算法在文本处理领域、信息检索、语义学、分子生物学等学科中应用的意义,对字符串中最有影响的KMP算法、BM算法、RK随机算法和SUANDAY算法以及由此而产生的一些改进算法进行研究,实现了实验分析及功能对比,并指明各算法的适用性. 相似文献
18.
一种快速的字串交叉模式匹配算法 总被引:7,自引:0,他引:7
介绍了一种基于高频字串提取的快速字串交叉模式匹配算法,同已有的KMP,BM等单模式匹配算法和有限自动机等多模式匹配算法相比,在字符集∑较大且字串个数远大于字串最大长度的情况下,该算法具有较低的时间复杂度和空间复杂度,并适用于字符集较大,词长较短的文本处理。 相似文献
19.
在对Aho-Corasic(AC)算法进行分析的基础上,提出了一种更加快速的多模式匹配算法——BAC。该算法利用扫描模式串集合计算偏移数得到更大的跳跃距离,减少了匹配次数使算法具有更高的效率。实验结果表明,BAC算法的性能优于同类的其他算法,特别是在模式长度较短的情况下,优势更为明显。 相似文献
20.
为进一步提升传统的近似模式匹配问题解决方法——动态规划算法的性能,提出了一种新的过滤型近似模式匹配算法.该算法结合动态规划算法,切分模式串得到长度相等且更小的模式片;在此基础上将待匹配的文本串分割成子串,并建立相应的索引;同时设计了一个新的过滤策略来消除匹配检查中的冗余.通过实例将文中方法与现有方法进行对比,结果表明:文中方法的匹配时间较短,匹配性能优于现有方法;随着模式串长度的增加,文中算法的优越性更为明显,模式串长度大于45后,文中算法的匹配时间可比传统动态规划算法缩短一半以上. 相似文献