免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实现字符串匹配的简单匹配算法和KMP算法,并且使用相同的比较字符串重复比较至少5000次,计算两者的时间差别。实验要求:完成实验内容要求,编写程序实现。提交报告,报告分三部分内容:1) 自己是怎么做的?遇到什么问题,怎样解决的?2) 用了哪些数据,得到什么结果?程序结果是不是跟你想的一样?为什么不一样?3) 还有哪些值得改进或者不懂的?一、 实验方案源程序的头文件定义为:#include #include #include #include 又作出以下宏定义方便编程:#define OVERFLOW -2#define OK 1#define MAXSTRLEN 255源程序中的各个函数原型如下所示:typedef char SStringMAXSTRLEN+1;int Index(SString S,SString T,int pos) /按照普通匹配查找方式查找模式串int i=pos;int j=1,k=0;while(i=(int)S0 & jT0) return i-T0;else return 0;/Indexvoid get_next(SString T,int next) /求KMP算法中的next函数值,并存入数组next int i=1; next1=0; int j=0; while(i(int)T0) if(j=0 | Ti=Tj) +i; +j; if(Ti!=Tj) nexti=j; else nexti=nextj; else j=nextj; /nextint Index_KMP(SString S,SString T,int pos) /KMP算法的实现过程int nextMAXSTRLEN;int i=pos;int j=1,k=0;while(i=(int)S0 & j(int)T0)return i-T0;else return 0;/Index_KMP源程序中主函数如下:void main()SString T,S;int p,i,j,k1,k2;p=1;i=1;j=1;printf(请输入字符串匹配主串:n);gets(&S1);printf(请输入字符串匹配模式串:n);gets(&T1);for(i=1;Si!=NULL;i+)S0=(int)(i);printf(字符串匹配中主串:n);puts(&S1);for(j=1;Tj!=NULL;j+)T0=(int)(j);printf(n字符串匹配中模式串:n);puts(&T1); printf(普通算法n);k1=Index(S,T,p);printf(普通匹配算法得模式串位置:%dnn,k1);printf(KMP算法n);k2=Index_KMP(S,T,p);printf(KMP算法得模式串位置:%dn,k2);二、 实验结果和数据处理(1)程序运行时,输入主串为S=qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqws ;模式串为T=qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqws;运行界面如下:小结:得到普通匹配算法的时间复杂度为3793,而KMP算法的时间复杂度为174,显然在匹配算法中,KMP算法优于普通算法,节省了时间以及资源。(2)当输入主串为S=A STRING SEARCHING EXAMPL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026西安市雁塔区第十三幼儿园教师招聘建设考试备考题库及答案解析
- 2026四川高能智盾科技有限公司招聘市场开发岗等岗位13人建设笔试参考题库及答案解析
- 2026国家开发投资集团有限公司战略性新兴产业国投创新院板块招聘建设笔试备考题库及答案解析
- 2026江西赣州市会昌县锦诚物业管理有限公司招聘劳务派遣工作人员2人建设考试备考题库及答案解析
- 2026辽宁省朝阳市喀左县教育局直属学校赴高校招聘教师(第二批次)13人建设考试参考试题及答案解析
- 2026湖北省崇阳县人才引进26人建设笔试模拟试题及答案解析
- 2026江苏无锡市住房公积金管理中心招聘2人建设考试备考试题及答案解析
- 2026年山东交通职业学院公开招聘博士研究生(30名)建设笔试模拟试题及答案解析
- 2026年中国科大附一院(安徽省立医院)心血管内科高超课题组科研助理招聘4人建设笔试备考题库及答案解析
- 2026广东广湛城旅游轮有限公司招聘建设考试参考题库及答案解析
- 股骨干骨折护理个案
- 无创辅助呼吸护理要点
- GB/T 6433-2025饲料中粗脂肪的测定
- 《生殖医学进展:胚胎冷冻保存技术》课件
- 施工现场环境保护责任清单
- DL∕T 5342-2018 110kV~750kV架空输电线路铁塔组立施工工艺导则
- DZ∕T 0291-2015 饰面石材矿产地质勘查规范
- 概念辨析复习 -2021-2022学年高一下学期物理人教版(2019)必修第二册(含答案)
- 《乙烯基聚乙二醇醚(VPEG)、乙烯氧基丁基聚乙二醇醚(VBPEG)》
- 甜食酒服务-教育课件
- 道路运输企业两类人员安全考核题库题库(1020道)
评论
0/150
提交评论