思路:
方法一:
先匹配haystack和needle的第一个字母,匹配成功则再逐个匹配needle的所有字母,若全部匹配成功则返回index
(这里是首字母匹配成功,index=i,如果needle中有任何字母不匹配则index=-1,
子循环结束后判断index是否为-1,不为-1则说明上面子循环所有字母匹配,找到答案,返回index)
改进:
1.匹配到长度haystack.size()-needle.size()
class Solution {
public:
int strStr(string haystack, string needle) {
if(needle=="")
return 0;
int index=-1;
for (int i=0;i<haystack.size();i++){
if(haystack[i]==needle[0]){
index=i;
for (int j=0;j<needle.size();j++){
if(haystack[i+j]!=needle[j]){
index=-1;
break;
}
}
if(index!=-1)
return index;
}
}
return -1;
}
};