免费预览已结束,剩余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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025四川绵阳惠东投资控股有限责任公司招聘12人员笔试参考题库附带答案详解
- 2026江苏南京大学现代工程与应用科学学院秘书招聘备考题库及答案详解(各地真题)
- 2026江西事业单位联考上饶市招聘394人备考题库附答案详解(b卷)
- 德行量化考核制度
- 创新培训考核制度
- 窗口考勤考核制度
- 餐厅职工考核制度
- 古代官僚考核制度
- 管材车间考核制度
- 催收行业考核制度
- 旅游行业如何玩转视频号 从0到1开启私域营销
- 急腹症影像诊断课件
- 【《紫鑫药业财务报告审计失败案列分析》12000字(论文)】
- 三级医院营养科建设方案
- 医院外联部主任述职报告
- 集团内部融媒体管理办法
- ASTM-D1238中文翻译(熔融流动率、熔融指数、体积流动速率)
- 2025年浙江省宁波市镇海中学高考英语模拟试卷(1月份)
- 短视频创作-短视频手机拍摄与剪辑
- 车辆挂靠驾校合同协议
- 工地盘扣打包合同协议
评论
0/150
提交评论