首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 390 毫秒
1.
在基于有限自动机的多模式匹配算法DFSA的基础上,结合改进的BM单模式匹配算法的优点,提出一种快速的多模式字符串匹配算法。在一般情况下,该算法不需要匹配目标文本串的每个字符,能充分利用匹配过程中本次匹配不成功的信息和已成功的信息,跳过尽可能多的字符。实验表明,模式串较短时,该算法需要的时间约为DFSA的1/2,模式串较长时,所需时间约为DFSA算法的1/3。  相似文献   

2.
一种时间复杂度最优的精确串匹配算法   总被引:12,自引:2,他引:12       下载免费PDF全文
现有的串匹配算法通常以模式长度作为滑动窗口大小.在窗口移动后,往往会丢弃掉一些已扫描正文的信息.提出了LDM(linear DAWG matching)串匹配算法,该算法将正文分为[n/m]个相互重叠、大小为2m-1的扫描窗口.在每个扫描窗口内,算法批量地尝试m个可能位置,首先使用反向后缀自动机从窗口中间位置向前扫描模式前缀;若成功,则再使用正向有限状态自动机从中间位置向后扫描剩余的模式后缀.分析证明,LDM算法的最差、最好、平均时间复杂度分别达到了理论最好结果:O(n),O(n/m),O(n(1ogσm)/m).实际性能测试也验证了平均时间复杂度最优这一理论结果.而且,对于在较大字母表下查找短模式的情况,LDM算法速度在被测试算法中最快.总之,LDM算法不但适合进行离线模式匹配,而且还特别适合需要进行在线高速匹配的应用.  相似文献   

3.
提出了一种基于确定有穷自动机的快速多模式串匹配算法,在匹配过程中能尽可能多地跳过待查文本串字符。算法的特性为现代网络搜索引擎的复合条件查询提供了有力的软件支撑。实验表明可有效地改善网络搜索引擎的性能。  相似文献   

4.
自动机是串匹配算法中常用的数据结构,对自动机实现紧缩存储可以节省算法空间。总结常用自动机紧缩存储方法,分析其原理、时间效率、空间效率和优缺点,给出各种方法与数据稀疏性之间的关系。运用紧缩存储方法实现基本AC算法,对随机数据和真实数据的实验结果证明该算法有效。  相似文献   

5.
6.
一种串匹配的快速Boyer-Moore算法   总被引:5,自引:0,他引:5  
在对经典的Boyer-Moore和Quick Search串匹配算法进行分析的基础上,提出了一种更加快速的串匹配算法Quick Boyer-Moore(QBM)。QBM算法利用当前尝试中的已匹配子串、匹配失败字符信息以及与当前窗口下一个字符的位置信息,以在每一次跳跃中获得更大的跳跃距离,从而使算法具有更高的效率。在真实语料上的实验结果表明,QBM算法的效率较显著地高于原始的BM算法及其改进算法Impmved Boyer-Moore(IBM)。  相似文献   

7.
采用规则分组的办法解决DFA状态爆炸问题,随着规则数目的增加,空间压缩效率大大降低。针对此问题,提出了模板有限自动机分组算法,基于规则模板对规则集进行分组,各分组分别构建匹配引擎。同时,根据实际规则数目和系统结构对规则子集的数目改变,达到更好的匹配效率。理论分析和实验表明,与传统分组算法相比,在存储空间压缩相当情况下,分组数目大大减少;与其他典型的DFA改进算法相比,预处理时间和存储空间有数量级别的缩减,且匹配速率没有明显降低。  相似文献   

8.
在串匹配搜索中,字符串常常采用U-不确定串、V-不确定串及其结合的U-V-不确定串.如何识别巨量U-不确定字符串、V-不确定字符串和U-V-不确定字符串,以及两个和两个以上U-V-不确定字符串的交错情况的串匹配,是没有遗漏地检测有害信息的关键问题.本文提出一个快速检测巨量U-不确定字符串、巨量V-不确定字符串和巨量U-V-不确定字符串的多串匹配完全自动机及其快速生成方法,包括两个和两个以上不确定字符串相互交错的情况;并且给出V-不确定字符串的完全自动机的最大并行台数,指出通常正则表达式匹配可能出现相似连接和交错情况的两种遗漏,指出如果没有从整体的角度对U-不确定串中的字符子串集进行两两不相交化及无同源后续奇点化的处理,结果就可能出现错误或者增加状态数目.  相似文献   

9.
本文提出一种改进的QS算法IQS。基于CPU进行一次字节长度的字符比较和进行一次机器字长长度的整数比较所花费的时间完全相同的事实,以及QS算法对当前尝试中比较顺序和匹配失败位置不关心的特点,IQS将字符比较映射到整数域进行。由于比较次数被成倍减少,算法的平均复杂度被降低,效率相应得到提高。在真实语料上的实验结果表明,IQS算法的匹配速度明显高于QS算法。  相似文献   

10.
原始AC自动机由于匹配性能低,无法满足当前大数据环境下大规模特征串实时匹配的应用需求。针对这一问题,提出一种基于多线程的多模式串匹配加速算法,称之为PARA-AC(Parallel Aho-Corasick automaton)。该算法将待匹配字符串切割成若干字符子串以及若干切割点边界字符集,并将字符子串、切割点边界字符集输入至线程池中进行匹配,从而实现字符串的并行化加速处理。实验结果表明,与原始AC自动机匹配算法相比,PARA-AC算法显著提高了匹配速度,约为原始AC的13.91倍。  相似文献   

11.
一种快速的字符串匹配算法   总被引:8,自引:0,他引:8  
字符串匹配技术在许多领域里广泛应用,本文在分析了BF、BM算法以及一些重要的改进算法的基础上,提出了一种新的改进算法——BMH2C,该算法利用两个字符计算右移量并保存在二维数组里,使右移量增大,比较次数减少,有效地提高了匹配速度.最后本文还给出了几种匹配算法的测试结果。  相似文献   

12.
在分析传统的模板匹配算法的基础上提出了一种新的基于字符串匹配的快速匹配算法。算法的思路是在模板图像上任意确定一列像素,并将这一列像素的灰度值看成是一个字符串,以此对原图像的每一列进行字符串匹配。如果在原图像上的某一列上找到了完全匹配的串,或者找到最大匹配的串,就找到了所要匹配的模板在图像中的可能位置。然后在所有找到的位置上再做进一步的字符串匹配。如此继续就可以确定模板图像在待匹配图像上的位置。算法在统计意义上保证了匹配效果,且提高了匹配速度。实验结果表明该算法是一种有效的图像匹配算法。  相似文献   

13.
提出一种高效海量字符串集合的模式匹配算法。给出了字符串集合模式匹配的定义,模式的预处理,字符串集合的存储结构和匹配算法,并分析了算法的复杂性和正确性。该文算法具有很好的时间复杂性和空间复杂性,因此具有很好的应用前景。  相似文献   

14.
在分析传统的模板匹配算法的基础上提出了一种新的基于字符串匹配的快速匹配算法.算法的思路是在模板图像上任意确定一列像素,并将这一列像素的灰度值看成是一个字符串,以此对原图像的每一列进行字符串匹配.如果在原图像上的某一列上找到了完全匹配的串,或者找到最大匹配的串,就找到了所要匹配的模板在图像中的可能位置.然后在所有找到的位置上再做进一步的字符串匹配.如此继续就可以确定模板图像在待匹配图像上的位置.算法在统计意义上保证了匹配效果,且提高了匹配速度.实验结果表明该算法是一种有效的图像匹配算法.  相似文献   

15.
入侵检测中一种新的快速字符串匹配算法   总被引:2,自引:0,他引:2  
基于字符串匹配的检测方法是入侵检测系统中一类很重要的分析方法。文章首先分析了现有的几种准确字符串匹配算法,然后提出了一种新的多模式字符串匹配算法,并且分析了这些算法的复杂性。最后,文章用具体的实验数据来验证这些算法的性能。通过实验可以看出,新算法使得检测速度大大提高,签名容量大大增加。  相似文献   

16.
多模式串匹配算法是网络内容过滤系统的核心技术之一.自动机的存储空间大小和Cache性能是影响多模式串匹配算法速度的关键因素.随着模式串规模的扩大,自动机的巨大存储开销导致现有的串匹配算法性能大幅度下降.从压缩存储空间以提高Cache命中率的思想出发,提出了一种对经典SBOM算法的优化策略,它用Suffix Tree代替SBOM算法中的Factor Oracle结构,同时用剪枝的方法将Suffix Tree降低为近似线性的空间复杂度,然后用双数组Trie表示之,以压缩存储空间.与SBOM算法相比,改进算法不仅能够有效地节省存储空间,而且显著地提高了串匹配的速度,非常适合于在线高速匹配的应用环境.  相似文献   

17.
一种用于内容过滤和检测的快速多关键词识别算法   总被引:13,自引:0,他引:13  
基于字符串匹配的检测方法是内容过滤和检测系统中一类很重要的分析方法,首先分析了现有的几种快速字符串匹配算法,然后提出了一种新的多模式字符串匹配算法,并简单分析了算法的复杂性,算法在设计的过程中吸取了BM算法中跳跃的特性,采用了后缀树算法得到了最大跳跃值,采用AC算法的匹配自动机原理从而避免对搜索树内每一个字符的匹配,最后,通过具体的实验数据验证了这些算法的性能,通过实验可以看出,新算法使得检测速度有很大提高,并有效屏蔽了关键词数量的增加对检测速度的影响。  相似文献   

18.
对于26个字母的全排,它们的邻间关系是唯一的。文中根据这个特性,针对子串长度较长的(大于26)字符串匹配问题,提出了一种基于邻间关系的匹配算法。该算法把字符串的邻间关系转化为十进制的数值,并利用这一数值实现字符串的快速匹配。该算法时间复杂度为O(m-n),且算法简便,容易实现。  相似文献   

19.

In this paper a new exact string-matching algorithm with sub-linear average case complexity has been presented. Unlike other sub-linear string-matching algorithms it never performs more than n text character comparisons while working on a text of length n . It requires only O ( m +σ) extra pre-processing time and space, where m is the length of the pattern and σ is the size of the alphabet.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号