Implement strStr().
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
java代码
public class Solution {
public int strStr(String haystack, String needle) {
if(null == haystack || null == needle ){
return -1;
}
if("".equals(needle)){
return 0;
}
int lenh = haystack.length();
int lenn = needle.length();
int i=0,j=0,m=0;
boolean find = false;
while(i<lenh){
m=i;
j=0;
while(m<lenh&&j<lenn&&haystack.charAt(m)==needle.charAt(j)){
m++;
j++;
}
if(j==lenn){
find = true;
break;
}
i++;
}
return find==true?i:-1;
}
}
go代码
func strStr(haystack string, needle string) int {
var lenh int = len(haystack)
var lenn int = len(needle)
if lenh==0 && lenn==0{
return 0
}
if lenh < lenn{
return -1
}
var m int = 0
for m < lenh{
i:=m
j:=0
for i<lenh&&j<lenn&&haystack[i]==needle[j]{
i++
j++
}
if j == lenn{
return m
}
m++
}
return -1
}