原题:
Implement strStr().
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
题目大意:给出两个字符串,从第一个字符串中找到第二个字符串在其中的起始位置,如果不属于其子串,返回-1;分析:从第二个字符串的末尾开始查找,这样一来最后可以直接得到起始位置;
代码如下所示:
public class Solution {
public int strStr(String haystack, String needle) {
int len1 = haystack.length();
int len2 = needle.length();
if (len1<len2) return -1;
int start = -1;
for(int begin=len2-1;begin<len1;begin++){
int i=begin;
int j= len2-1;
while(j>=0){
if(haystack.charAt(i)==needle.charAt(j)){
i--;
j--;
continue;
}
else{
break;
}
}
if( j==-1){
start = i+1;
break;
}
}
return start;
}
}