String a = "abcd"; String b = "bcdadabcd"; String max = a.length() > b.length() ? a : b; String min = a.length() < b.length() ? a : b; String temp = null; int i = 0; int j = 0; int index=-1; while (i < max.length()&&j<min.length()) { Log.i("tag", "i:" + i); if (String.valueOf(max.charAt(i)).equals(String.valueOf(min.charAt(j)))) { if (j==0){ index=i; if (max.substring(i,max.length()).length()<min.length()){ index=-1; break; } } j++; i++; } else { i = i - (j - 1); j=0; } } Log.i("tag", "index:" + index);
KMP算法 计算短字符串在长字符串中的第一次出现的位置
最新推荐文章于 2024-09-15 09:00:00 发布