[发明专利]一种无间隙约束的在线串匹配方法有效
申请号: | 201811018506.X | 申请日: | 2018-09-03 |
公开(公告)号: | CN109271419B | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 武优西;王建姣;刘靖宇;张帅;柴欣;朱怀忠;李艳 | 申请(专利权)人: | 河北工业大学 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458 |
代理公司: | 天津翰林知识产权代理事务所(普通合伙) 12210 | 代理人: | 胡安朋 |
地址: | 300130 天津市红桥区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明一种无间隙约束的在线串匹配方法,涉及电数字数据处理技术领域,利用在线的方式来处理无间隙约束的无重叠的模式匹配问题,即序列串中同一位置的字符可以在模式串的不同位置进行匹配。步骤是:读入模式串P,建立多个队列;对给定的序列串S按照前后顺序依次读取;判定队列i是否能够创建结点;判定是否能够构成一个无重叠条件的出现,当构成一个出现则将其在显示器上输出,直至处理完序列串S中的所有字符。本发明克服了现有技术存在的在保证完备性的基础上很难有效地控制空间开销和时间开销的缺陷,不仅提高了求解的速度,同时还保证了解的完备性。 | ||
搜索关键词: | 一种 间隙 约束 在线 匹配 方法 | ||
【主权项】:
1.一种无间隙约束的在线串匹配方法,其特征在于具体步骤是:第一步,读入模式串P,建立多个队列:读入模式串P,确定该模式串P的长度为m,该模式串P中的各个模式子串的字符为pi,这里i为1、2、3、……、m中的一个数字,为此,该模式串P中的各个模式子串的字符分别为p1、p2、……、pm,并对模式串P建立m个队列,这些队列的编号为队列i,这里i为1、2、3、……、m中的一个数字,则模式串P建立的m个队列分别是队列1、队列2、……、队列m;第二步,对给定的序列串S按照前后顺序依次读取:对给定的序列串S按照前后顺序依次读取读入该序列串S中的字符sj,这里j为1、2、3、……、n中的一个数字,为此,该序列串S中的每个字符分别为s1、s2、s3、……、sn;第三步,判定队列i是否能够创建结点:判定上述第一步的队列i是否能够创建结点,依照如下方法处理:依次对读入上述第二步给定的的序列串S中的字符sj,依次判定其与模式串P中相应的模式子串字符pi是否相同,当都不相同时,直接放弃对该字符的处理,当字符sj与字符pi相同时,则需要按照如下形式进行判定,确定能否在队列创建结点:(3.1)能在队列i创建结点的形式:(3.1.1)当i=1时,则在队列1创建结点,记为结点
(3.1.2)当i>1且p(i‑1).back≠j时,并且如下公式(1)成立,numi (3.1.3)当i>1且p(i‑1).back=j时,并且如下公式(2)成立,numi (3.2)不能在队列i创建结点的形式:(3.2.1)当i>1时,numi‑1=0,则不能在队列i创建结点,(3.2.2)当i>1且p(i‑1).back≠j时,并且如下公式(1)不成立,numi 表示,其中上标k1为每个队列i的第一个结点在序列串S中的顺序号,这样由每一个队列i的第一个结点构成的出现,用
的形式进行表示,输出到显示器上,显示为<
的上标>。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河北工业大学,未经河北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201811018506.X/,转载请声明来源钻瓜专利网。