KMP模式匹配练习题
使用KMP算法在文本串S中找模式串P是一种常见的方法。假设S=P={xyxyyxxyx},亦即将S对自己进行匹配,匹配过程中正确的next数组是____。
模式串的各个子串 |
前缀 |
后缀 |
最大公共元素长度 |
x |
空 |
空 |
0 |
xy |
x |
y |
0 |
xyx |
x , xy |
x , yx |
1 ( x ) |
xyxy |
x , xy , xyx |
y , xy , yxy |
2 ( xy ) |
xyxyy |
x , xy , xyx , xyxy |
y , yy , xyy , yxyy |
0 |
xyxyyx |
x , xy , xyx , xyxy , xyxyy |
x , yx , yyx , xyyx , yxyyx |
1 ( x ) |
xyxyyxx |
x , xy , xyx , xyxy , xyxyy ,xyxyyx |
x , xx , yxx , yyxx , xyyxx ,yxyyxx |
1 ( x ) |
xyxyyxxy |
x , xy , xyx , xyxy , xyxyy ,xyxyyx , xyxyyyxx |
y , xy , xxy , yxxy , yyxxy ,xyyxxy , yxyyxxy |
2 ( xy ) |
xyxyyxxyx |
x , xy , xyx , xyxy , xyxyy ,xyxyyx , xyxyyyxx , xyxyyyxxy |
x , yx , xyx , xxyx , yxxyx ,yyxxyx , xyyxxyx , yxyyxxyx |
3 ( xyx ) |
2、通过“最长相同前缀后缀长度值右移一位,然后初值赋为 -1 ”得到的 next 数组:
模式串 |
X |
Y |
X |
Y |
Y |
X |
X |
Y |
X |
前缀最大公共元素 |
0 |
0 |
1 |
2 |
0 |
1 |
1 |
2 |
3 |
Next |
-1 |
0 |
0 |
1 |
2 |
0 |
1 |
1 |
2 |
KMP模式匹配练习题的更多相关文章
- KMP模式匹配_2
http://blog.csdn.net/lin_bei/article/details/1252686 三. 怎么求串的模式值next[n] 定义: (1)next[0]= -1 意义:任何串的第一 ...
- YTU 2297: KMP模式匹配 三(串)
2297: KMP模式匹配 三(串) 时间限制: 1 Sec 内存限制: 128 MB 提交: 25 解决: 16 [提交][状态][讨论版] [Edit] [TestData] 题目描述 输入一 ...
- YTU 2296: KMP模式匹配 二(串)
2296: KMP模式匹配 二(串) 时间限制: 1 Sec 内存限制: 128 MB 提交: 29 解决: 17 题目描述 输入一个主串和一个子串,用KMP进行匹配,问进行几趟匹配才成功,若没成 ...
- YTU 2295: KMP模式匹配 一(串)
2295: KMP模式匹配 一(串) 时间限制: 1 Sec 内存限制: 128 MB 提交: 32 解决: 22 题目描述 求子串的next值,用next数组存放,全部输出 输入 输入一个字符串 ...
- KMP模式匹配 三(弦)
原文请訪问我的博客:xiaoshig.sinaapp.com KMP模式匹配 三(串) Time Limit:1000MS Memory Limit:131072KB 64bit IO ...
- KMP算法 KMP模式匹配 一(串)
A - KMP模式匹配 一(串) Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:131072KB ...
- 2295: KMP模式匹配 一(串)
2295: KMP模式匹配 一(串) 时间限制: 1 Sec 内存限制: 128 MB提交: 210 解决: 97[提交][状态][讨论版][命题人:外部导入] 题目描述 求子串的next值,用n ...
- 字符串的朴素模式和KMP模式匹配
先复习一下字符串指针: #include <iostream> #include <string.h> using namespace std; int main() { ch ...
- KMP模式匹配
http://www.cnblogs.com/wangguchangqing/archive/2012/09/09/2677701.html nextal[j+1]=next[j]+1 KMP算法的实 ...
随机推荐
- IOS基础之 (十一) 内存管理 ARC
一 内存管理 1. set 方法内存管理的相关参数 retain: release旧值,retain新值(值适用于OC对象) assign:直接赋值(set方法默认,适用于非OC对象类型,即基本数据类 ...
- SmartImageView&常见的开源代码
1)说明: 该控件实现图片的显示----网络路径也可以显示出来---加载完成之后 就可以 缓存到内存里面!
- mongodb基本数据类型
本文导读:Mongodb是一种强大,灵活,可扩展的数据存储方式.它扩展了关系型数据库众多有用的功能,如索引,范围查询和排序. MongoDB的文件存储格式为BSON,同JSON一样支持往其它文档对象和 ...
- SqlDataReader执行带输出参数存储过程 错误分析
在上一篇随笔:SqlDataReader读取分页数据,pageCount你是肿么了? 遇到了很让人头疼的问题:SqlDataReader执行带输出参数的存储过程总是获取不到输出参数的正确值.这里将解决 ...
- 实现JavaScript自定义函数的整合、链式调用及类的封装
函数声明形式:表单验证函数 1 2 3 4 5 6 7 8 9 10 11 12 13 function checkName(){ console.log('检查用户名'); } functi ...
- Linux 解压命令tar的理解
今天回顾了下tar 这个打包工具的一些常用参数 选项与参数: -c :创建打包文件,可搭配 -v 来察看过程中被打包的档名(filename) -t :察看打包文件的内容含有哪些档名,重点在察看『档名 ...
- zhx's contest (矩阵快速幂 + 数学推论)
zhx's contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) To ...
- 【Swoole应用教程】一、Swoole扩展的编译安装部署
介绍swoole扩展,从源码的下载,环境依赖,编译参数配置,常见编译问题,安装,配置等内容.期间还会介绍: Linux发行版本的选择 不同版本内核的差异 gcc/g++/clang 3种编译器介绍 a ...
- IOS AFNetworking
http://www.coneboy.com/?p=716 AFNetworking 使用总结 (用法+JSON解析) 2013 年 4 月 11 日 No comments Article 这几天 ...
- 一次手工注入waf [转载]
转载自sss安全论坛 目标站点:http://www.xxx.cn:88注入点:http://www.xxx.cn:88/new/details1.asp?n_id=49909对其进行检测:http: ...