希望学长的代码能给大二西电er们带来帮助(大家一定要好好学习数据结构,合理利用资源)
大家找到了什么bug或有什么改进意见可以私信我或在下方留言,我都会看的
不多说废话直接上代码
#include<bits/stdc++.h>
using namespace std;
string T = "", P = "";
signed main() {
int ans = 0;
cin >> T >> P;
for (int i = 0, j = 0; i < T.size();) {
if (T[i] != P[j]) {
i = i - j + 1;
j = 0;
ans++;
}
else {
i++;
j++;
ans++;
if (j == P.size()) {
printf("匹配成功!比较次数为:%d\n返回第一次匹配成功的位置(首字母位序):%d\n", ans, i - j+1);
return 0;
}
}
}
printf("匹配失败!比较次数为:%d", ans);
return 0;
}