|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 奥普瓯江 于 2022-2-10 15:55 编辑
原理:
备注:
代码:
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- char str[] = {"ILoveFishC.com"};
- char str_2[] = {"FishC"};
- int j = 0;
- for(int i = 0; str[i] != '\n'; i++)
- {
- if(str[i] == str_2[j] || str_2[j] == '\0')
- {
- if(str_2[j] == '\0')
- {
- printf("以在字符串内找到%s\n", str_2);
- break;
- }
- j++;
- }
- else if(str[i + 1] == '\0')
- {
- printf("str字符串%s不存在str_2字符串%s\n", str, str_2);
- break;
- }
- }
- return 0;
- }
复制代码
因为想不出kmp算法在复习一遍BF算法,这回比上一次那个写法短
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- char strc_1[] = {"ILoveFishC.com"};
- char strc_2[] = {"m"};
- int i = 0;
- while(strc_1[i] != '\0')
- {
- for(int j = 0; strc_1[i] == strc_2[j] ; j++, i++)
- {
- if(strc_2[j + 1] == '\0')
- {
- printf("在第%d之后\n", i - j);
- return 0;
- }
- }
- i++;
- }
- if(strc_1[i] == '\0')
- {
- printf("未在字符串strc_1中找到与字符串strc_2相匹配的项!\n");
- }
- return 0;
- }
复制代码 |
|