编辑代码

#include <iostream>
#include <string>

using namespace std;

// 蛮力字符串匹配
int bruteForceStringMatch(const string& text, const string& pattern) {
    int n = text.length();
    int m = pattern.length();

    for (int i = 0; i <= n - m; i++) {
        int j = 0;
        while (j < m && text[i + j] == pattern[j]) {
            j++;
        }

        if (j == m) {
            // 匹配成功,返回起始位置
            return i;
        }
    }

    // 未找到匹配,返回 -1
    return -1;
}

void Judge(const string& text, const string& pattern) {
    // string text1 = text;
    // string pattern1 = pattern;

    int result = bruteForceStringMatch(text, pattern);

    if (result != -1) {
        cout << "字符串匹配成功,起始位置:" << result << endl;
    } else {
        cout << "未找到匹配" << endl;
    }
}

int main() {
    string text = "ababcababcabcabc";
    string pattern = "abcabc";
    Judge(text, pattern);

    text = "abaaabb";
    pattern = "abc";
    Judge(text, pattern);

    text = " ";
    pattern = "";
    Judge(text, pattern);
    return 0;
}