Implement strStr().
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
Update (2014-11-02):
The signature of the function had been updated to return the index instead of the pointer. If you still see your function signature returns a char *
or String
, please click the reload button to reset your code definition.
还是Easy Mode.直接上代码
public class Solution {
public int strStr(String haystack, String needle) {
if(needle.length()>haystack.length())return -1;
if(needle.length()==0)return 0;
for(int i=0;i<=haystack.length()-needle.length();i++){
int j=0;
while(haystack.charAt(i+j)==needle.charAt(j)){
if(j==needle.length()-1)return i;
j++;
}
//i=i+j;
}
return -1;
}
}
本想通过i=i+j进行剪枝减少重复,不过有点问题,懒的多想了,就这吧。