(C语言)Brute-Force算法详解以及实现 - 朱岩松博客

朱岩松博客

记录
点滴生活
首页>> 学习笔记 >>(C语言)Brute-Force算法详解以及实现 - 朱岩松博客

Brute-Force算法(简称BF算法)即简单模式匹配算法也称暴力匹配,就是粗暴地拿一个串同另一个串中的字符一一比对,得到最终结果。


思路为:

假设有主串s1和子串s2,s1的第一个字符和s2的第一个字符开始比较,若是相等,则继续比较后续字符;否则从主串s1的第二个字符开始重新与子串s2的第一个字符比较,若相等则继续比较后续字符,否则从主串s1的第三个字符开始重新与子串s2的第一个字符进行比较,以此类推,最终如果子串的所有字符全部比较完则代表主串中存在和子串s2相等的子串。否则则不匹配。

直接上代码


void bf(char *s1,char *s2){
int i=0,j=0;
int s1length=strlen(s1);
int s2length=strlen(s2);

while(i<s1length && j<s2length){
	if(s1[i]==s2[j]){
	i++;
	j++;
	}else{
		i=i-j+1;
		j=0;
	}
}

if(j==s2length){
printf("true");
}else{
printf("false");
}
}


传入参数为bf("xxx1","xx");输出true

传入参数为bf("xxx1","1x");输出false

没写注释,自己理解。每日一水结束~



×

感谢您的支持,我们会一直保持!

扫码支持
请土豪扫码随意打赏

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在


版权所有,转载注意明处:朱岩松博客 » (C语言)Brute-Force算法详解以及实现
标签: 编程 学习心得 C语言 算法 专升本 数据结构 BF算法 模式匹配算法

发表评论

路人甲
未显示?请点击刷新

网友评论(0)