BF算法——又称”蛮力算法“
Brute-Force
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
char a1[50] = {0}, a2[50] = {0};
scanf("%s", a1);
scanf("%s", a2);
int len1 = strlen(a1), len2 = strlen(a2);
int i = 0, j = 0;
while (i < len1 && j < len2) {
if (a1[i] == a2[j]) { //当对应字符相等时,比较后续字符
i++;
j++;
} else { //当对应字符不等时
i = i - j + 2; //主串回溯到 i - j + 2 的位置重新比较
j = 1; //模式串从头开始重新比较
}
}
if (j == len2) {
printf("第二个字符串在主串中的位置: %d\n", i - len2 + 1);
} else {
printf("匹配失败!");
}
return 0;
}