美文网首页
数据结构与算法串的模式匹配

数据结构与算法串的模式匹配

作者: 傻疯子 | 来源:发表于2022-02-24 23:26 被阅读0次

1.简单的模式匹配算法
子串的定位通常称为串的模式匹配,它求的是子串的(常称模式串)在主串中的位置

实现思想:
将主串中与模式串长度相同的子串摘出来,按个与模式串对比

缺点:主串指针会出现回溯现象导致时间开销增加

最坏时间复杂度:O(mn),其中m和n分别代表主串和模式串的长度

2.KMP算法
字符串的前缀、后缀和部分匹配值

next数组:当模式串的第j个字符匹配失败时,令模式串跳到next[j]再继续匹配

时间复杂度:O(m+n)

优点:主串不会进行回溯

3.KMP算法优化
当子串和模式串不匹配时j=nextval[j],通过构造nextval函数

相关文章

  • 串的模式匹配算法之kmp

    title: 串的模式匹配算法之kmptags: 数据结构与算法之美author: 辰砂tj 1.引言 首先我们需...

  • 字符串匹配算法

    以下为学习 《数据结构与算法之美 -- 字符串匹配》 的记录。 BF算法 即暴力匹配算法,循环遍历匹配。 RK算法...

  • 数据结构与算法学习 (08)字符串匹配--BF算法/RK算法

    BF算法也就是串的模式匹配算法,在主串中查找与模式T(副串)相匹配的子串,如果匹配成功,找到该子串在主串出现的第一...

  • 字符串匹配算法

    KMP算法 算法介绍 KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。...

  • 模式匹配算法

    《数据结构(C语言版)》上给出了两种模式匹配算法,BF算法和KMP算法。 存在一个主串S和一个模式T,要在主串S中...

  • 一些有关算法的

    字符串模式匹配算法 字符串的KMP算法详解部分匹配表(即)向右移一位就可以得到next数组。字符串模式匹配算法 R...

  • 字符串匹配算法总结

    字符串匹配算法总结 所有代码集合 在一个主串中匹配模式串 BF算法   最简单的使用strcmp逐个匹配的算法, ...

  • 数据结构—KMP算法

    KMP算法是一种改进的字符串算法 KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速...

  • 字符串匹配算法

    拉勾教育中《重学数据结构与算法》第08节讲到,字符串和如何应对字符串匹配算法。 字符串 字符串(string) 是...

  • AC自动机

    字符串匹配算法 单模式串匹配算法 是在一个模式串和一个主串之间进行匹配,也就是说,在一个主串中查找一个模式串。 多...

网友评论

      本文标题:数据结构与算法串的模式匹配

      本文链接:https://www.haomeiwen.com/subject/migtrrtx.html