朴素字符串匹配算法
发布日期:2021-07-20 23:38:50
浏览次数:10
分类:技术文章
本文共 901 字,大约阅读时间需要 3 分钟。
#include <iostream>
#include <stdlib.h> #include<string.h> #define maxsize 40 #define ok 1 #define error 0 using namespace std; typedef char String[maxsize+1]; int String_assign(String m,char *chars) { int i; if(strlen(chars)>maxsize) { return error; } else { m[0]=strlen(chars); for(i=1;i<=m[0];i++) { m[i]=*(chars+i-1); } } return ok; } int index(String m,String n,int pos ) { int i=pos; int j=1; while(i<=m[0]&&j<=n[0]) { if(m[i]==n[j]) { i++; j++; } else { i=i-j+2; j=1; } } if(j>n[0]) { return i-n[0]; } else { return 0; }}
int main() { String t,s1,s2; int k; cout<<"please input first string:"<<endl; k=String_assign(s1,"abcdefg"); if(!k) { cout<<"串长s1超过maxsize!"<<endl; } cout<<s1<<endl; cout<<"please input second string:"<<endl; k=String_assign(s2,"def"); if(!k) { cout<<"串长s2超过maxsize!"<<endl; } cout<<s2<<endl; k=index(s1,s2,1); cout<<"the same character from start:"<<k<<endl; return 0;}
转载地址:https://blog.csdn.net/limuzi13/article/details/8035539 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年09月01日 13时04分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
evel()函数
2019-05-24
Unsupported major.minor version 52.0解决办法
2019-05-24
服务器端负载均衡和客户端负载均衡的区别?
2019-05-24
git中HEAD^和HEAD~的区别
2019-05-24
静态库和动态库的区别
2019-05-24
线程池之newFixedThreadPool定长线程池
2019-05-24
线程池中shutdown()和shutdownNow()方法的区别
2019-05-24
MyBatis的PageHelper不生效问题
2019-05-24
Linux文件上传下载,rz和sz
2019-05-24
Zmodem transfer canceled by remote side
2019-05-24
java泛型
2019-05-24
json字符串转Bean和List时候打印Date的WARN级别日志
2019-05-24
static静态代码块执行次数
2019-05-24
get方法传递到后台中文乱码解决方法
2019-05-24
break和continue的区别
2019-05-24
解决springmvc文件下载,内容损坏问题
2019-05-24
velocity模板前端页面Date时间格式化
2019-05-24
mybatis的if test判断
2019-05-24
页面加载事件
2019-05-24
js中时间格式转换和ajax中拼接时间格式转换
2019-05-24