kmp算法报告
摘要关键词匹配(Keyword Matching)有时也称为模式匹配(Pattern Matching),是计算机科学中一个基本问题,也是一个经典的算法问题。该算法目前被广泛用于信息处理、网络信息过滤、入侵检测系统和生物信息计算的基因序列比较等工作中。本文首先分别介绍单模式匹配和多模式匹配的经典算法,单模式匹配算法主要分析了KMP算法和BM算法,多模式匹配算法详细分析了Wu-Manber多模式匹配算法,并对其进行了改进,最后通过实验对几种算法的复杂度进行了比较。引言简单的说关键词匹配问题就是从给定的文本(Text)中,找出所有的需要匹配的模式(Pattern)。一类匹配问题是预先知道文本,再根据动态给出的模式进行匹配,例如搜索引擎预先收集Web页信息,再跟据用户输入的关键词进行匹配查找,处理这类问题需要对已知的文本做一些处理来加速匹配过程,一般采用对文本加索引的方式;另一类匹配问题是预先知道模式,在不同的文本中进行匹配,例如用关键词过滤信息,根据特征码检查病毒等都属于这类问题。根据待匹配的关键词的个数又可以分为单模式匹配和多模式匹配。另外根据匹配的方式还可以分为基于字符比较匹配(character comparison)和基于非字符比较匹配(主要将字符串看作bit串来处理和一些数值型的方法)两种。本文要讨论的是预先知道模式的情况下基于字符比较的模式匹配问题,本文首先分别介绍单模式匹
原创力文档

文档评论(0)