Description:
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
题目意思:在字符串haystack中找寻字符串needle第一次出现的位置。不符合要求则返回-1.
我的AC代码:直接调用了JAVA中的indexOf()方法。
public class Solution {
public int strStr(String haystack, String needle) {
return haystack.indexOf(needle);
}
}
通过Java源码查看indexOf()方法的代码,发现写的不太好理解,下面献上比较易懂官方解题代码:
public int strStr(String haystack, String needle) {
for (int i = 0; ; i++) {
for (int j = 0; ; j++) {
if (j == needle.length()) return i;
if (i + j == haystack.length()) return -1;
if (needle.charAt(j) != haystack.charAt(i + j)) break;
}
}
}