首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 109 毫秒
1.
王浩  张霖 《计算机应用与软件》2012,29(5):114-116,129
提出一种基于坏字符序检测的快速模式匹配算法(BCSBM)。该算法利用相邻字符序列在模式串中不出现的概率较单字符高的特性,基于好字符和坏字符序表实现字符匹配过程的"跳跃"。BCSBM算法显著减少了匹配窗口内字符的匹配次数,同时增大了匹配窗口的平均移动距离。算法的实际测试效率较高,在文本或模式串相对较长的情况下该算法的效率提高明显。  相似文献   

2.
BM算法是一类效率较高的单模式匹配算法,通常改进的BM算法往往从提高字符首次不匹配概率和匹配窗口的最大移动距离入手,但为实现此目的所带来的高访存开销使算法实际效率受到影响。DCSBM算法以适当减小关键步长为代价,在利用双字符序检测提高首次匹配失败概率的同时,对匹配窗口移动关键步长字符距离所需的查表次数和访存次数进行优化。经测试,DCSBM算法显著提高了匹配窗口的平均移动距离。在文本或模式串相对较长情况下,该算法实际测试效率优于BM、BMHS、BMN等算法。  相似文献   

3.
改进的Sunday模式匹配算法   总被引:5,自引:1,他引:4       下载免费PDF全文
在基于模式匹配的检测方法中,匹配效率是检测技术的瓶颈,间接影响入侵检测系统的实时性能。该文对4种模式匹配算法进行分析后,选择最优的Sunday算法进行改进。该算法进行匹配前先找到模式串中的特征字符(出现概率最小的字符),进行特征字符与尾字符双重匹配,失败则移动尽可能远的距离。实验结果证明匹配效率比Sunday算法有一定的提高。  相似文献   

4.
入侵检测系统中BM算法的改进   总被引:1,自引:0,他引:1  
随着网络安全问题的日益突出,入侵检测技术也成为当前研究的热点,模式匹配算法是入侵检测系统(IDS)中一种重要算法,直接影响剑系统的准确性和实时性.在研究BM算法和分析现有改进算法的基础上,提出了一种新的改进算法.该算法利用了末字符和下一个字符在模式串中首次出现的位置、存在性、唯一性的判断来增加模式串移动距离,利用记录因子记录上次匹配过程中的匹配后缀来减少比较次数,从而有效地加快模式匹配的速度,提高入侵检测的效率.  相似文献   

5.
经典字符串匹配算法的本质都是从左向右或者从右向左顺序进行字符匹配的,在主串中存在大量子串与模式串前缀或者后缀相同时效率较低,并且模式串最大右移长度为模式串长度。改进算法采用二分匹配字符串的方法,有效地避免了由主串中大量子串与模式串前缀相同或者后缀相同引起的无意义比较次数。模式串的移动距离根据改进的坏字符规则进行计算,增大了模式串的移动距离。实验结果表明,改进的字符串匹配算法可以有效地减少字符串的匹配次数和移动次数,达到了提高算法效率的目的。  相似文献   

6.
文章分析经典的BF算法及其改进方法,根据字符串匹配的特点对BF算法提出了新的改进算法I_BF算法。I_BF算法根据模式串的首字符与匹配窗口之间的距离来确定右移距离,从而进行快速地匹配,匹配方式是从左往右进行。为了测试I_BF算法的性能,在相同条件下,从匹配字符个数、匹配次数、所花时间三方面对I_BF算法进行实验。结果表明,由于I_BF算法能够很大程序地跳过坏字符,减少匹配次数和字符比较个数,节约匹配时间,从而有效地提高匹配速度。  相似文献   

7.
基于KMP算法的改进算法KMPP   总被引:1,自引:0,他引:1  
KMP算法和BM算法是经典的单模式匹配算法,但KMP算法中文本指针[i]每次只能移动一个字符,整体的匹配效率并不高,结合KMP算法和BM算法的优点提出一种改进算法(KMPP)。算法的思想是模式串与文本在[j]处不匹配时,预算出模式串移动[next[j]]后末字符在文本中的位置,当该位置的文本字符与末字符不匹配时,则用该字符进行坏字符匹配,这两步的跳跃距离就是文本指针[i]移动的距离,从而使指针[i]每次移动的距离达到最大。实验结果表明,该算法匹配次数远低于KMP算法的匹配次数,提高了模式匹配的效率。  相似文献   

8.
高效字符匹配算法的研究   总被引:1,自引:1,他引:0       下载免费PDF全文
在分析BM算法以及它的衍生版本BMH、Sunday等算法的基础上,提出一种新的改进算法。改进算法有三个重要特点:(1)采用双字符启发策略,提高模式串最大移动位数及其概率,最大移动位数为n+2;(2)采用窗口动态分段方法,尽量减少字符匹配次数;(3)建立模式串中相同字符的位置链,充分利用启发字符,降低模式匹配的冗余度。实验结果表明,改进算法具有较高的匹配效率。  相似文献   

9.
模式匹配算法是影响入侵检测系统性能的关键所在.首先分析主流的单模匹配算法BMSH和BM2算法,将多模匹配算法AC和BMSH结合,得到AC_BMSH算法.对AC_BMSH算法进行分析,指出AC_BMSH算法在匹配中存在两个缺陷:失配时单字符决定移动的距离短和模式串树最大移动距离小;针对AC_BMSH算法的不足,提出一种改进的有更好平均移动距离的多模式匹配算法ImprovedAC_BMSH(I_AC_BMSH)算法.改进算法采用双字符决定移动距离,失配时扩大模式串树最大移动距离.实验结果表明改进算法I_AC_BMSH相对于AC_BMSH算法有更好的匹配效率.  相似文献   

10.
入侵检测系统Snort检测的基本原理是模式匹配。为了提高模式匹配算法的效率,从两方面对Snort中的BM算法进行改进。首先,为了增大模式串移动的距离,改进算法利用了与模式串最右端对齐的下一个及第二个文本字符,以及这两个字符再向右偏移模式串长度所对应字符在模式串中的出现情况,最大移动距离达到了2m+2。其次,为了增大失配时大的移动距离出现的概率,利用了最右端字符与其下一个字符的组合概率特性。最后,对算法进行了性能测试。测试结果表明改进算法减少了窗口移动次数和字符比较次数,提高了匹配效率。  相似文献   

11.
一种活动模板子结构引导的联机手写汉字识别方法   总被引:1,自引:0,他引:1  
结构匹配是一种有效的联机手写汉写识别方法,为了减少匹配运算,人们一直在寻 求利用部分匹配的结果来引导整体匹配的方法.在特征匹配与结构匹配综合的基础上,从 3.755个一级国标汉字中提取出45个子结构,利用它们来引导结构匹配.由于这些子结构总 出现在字首或字尾,因而对它们的检测比较容易.同时,通过建立子结构活动模板及设计子结 构动态抽取算法,使得子结构匹配的准确度得到很大提高.实验结构表明,该方法使结构匹配 的运算量减少约50%,并对类似的物体识别问题有一定的启发意义.  相似文献   

12.
在分析了BM模式匹配算法的基础上,提出了一种新的字符串单模式匹配算法,该算法通过对模式中的字符进行等级划分,设置模式中各个字符的优先级,改进模式串的移动方式,减少了模式匹配的次数和字符比较的次数,有效的提高了模式匹配的效率。实验显示,该算法有效的提高了模式匹配的效率。  相似文献   

13.
一种改进的字符串模式匹配算法   总被引:1,自引:0,他引:1  
提出一种改进的字符串模式匹配算法。该算法对文本串进行预处理,即对文本串中不存在于模式串中的字符以及文本串中剩下的出现次数最少的字符分别进行标记,再通过匹配模式串的首尾字符来减少出现次数最少的字符的标记个数。发生匹配失败时,将模式串直接滑动到标记了的出现次数最少的字符处。通过实验证明,该算法的移动次数和比较次数有较大减少,耗费的额外空间的大小也不超过模式串的长度,进一步提高模式匹配的效率。  相似文献   

14.
BMH2C算法综合BMH和BMHS算法,利用当前窗口字符t[k]及其下一字符t[k+1]组成的双字符串来决定模式串右移量,具有比BM算法、BMH算法、BMHS算法更优的性能。但对于双字符串在模式串中出现一次及以上的情况。BMH2C算法中的模式串右移量仍有待进一步增大,从而减少当前窗口右移次数,提高BMH2C算法的匹配效率。为此,在BMH2C算法的基础上提出一种改进算法,该算法考虑双字符串舭t[k]t[k+1]在模式串中出现的次数,以及该双字符串在模式串中对应位置的后继字符与字符t[k+2]的相等关系。改进算法利用2个右移数组和1个模式串预处理数组,在匹配过程中通过判断字符t[k+2]与模式串预处理数组中相应字符是否相等,从而选择2个右移数组之一的对应值作为当前窗口的右移量。实验结果显示,在相同条件下,对于当前窗口移动次数和匹配所耗时间,BMH2C改进算法比BMH2C算法分别平均减少11.33%和9.40%,有效提高了匹配效率。  相似文献   

15.

模式匹配算法是入侵检测系统(IDS) 中非常重要的一种算法. 在研究和分析几种常用模式匹配算法的基础 上, 提出一种快速的基于BM(Boyer-Moore) 模式匹配的改进算法—–IBM 算法. 该算法充分利用模式串的末字符和 末字符所对应的文本串的后两字符的唯一性, 同时参考文本串本身的信息来提高模式串的移动量, 使得每次失配后, 在保证不丢失匹配成功可能性的前提下尽可能多地向后跳跃. 实验结果表明, 该算法相比其他模式匹配算法, 在检测 性能和匹配效率上均具有很大优势, 并且能够有效地提高IDS 的检测效率和性能.

  相似文献   

16.
An approach to designing very fast algorithms for approximate string matching in a dictionary is proposed. Multiple spelling errors corresponding to insert, delete, change, and transpose operations on character strings are considered in the fault model. The design of very fast approximate string matching algorithms through a four-step reduction procedure is described. The final and most effective step uses hashing techniques to avoid comparing the given word with words at large distances. The technique has been applied to a library book catalog textbase. The experiments show that performing approximate string matching for a large dictionary in real-time on an ordinary sequential computer under our multiple fault model is feasible  相似文献   

17.
In this paper we present a short survey and experimental results for well known sequential string matching algorithms. We consider algorithms based on different approaches including classical, suffix automata, bit-parallelism and hashing. We put special emphasis on algorithms recently presented such as Shift-Or and BNDM algorithms. We compare these algorithms in terms of the number of character comparisons and the running time for four different types of text: binary alphabet, alphabet of size 8, English alphabet and DNA alphabet.  相似文献   

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

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