1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| public static int BruteForce(String str1, String str2) { char[] s1 = str1.toCharArray(); char[] s2 = str2.toCharArray();
int s1len = s1.length; int s2len = s2.length; int i = 0; int j = 0; while(i < s1len && j < s2len) { if (s1[i] == s2[j]) { i++; j++; } else { i = i - (j-1); // i-j即回到上一次的初始位置 +1后移一位 j = 0; } }
if (j == s2.length) { return i-j; } else { return -1; } }
|