1、题目描述
2.题目分析
字符串操作,注意边界条件即可。
3.代码
1 int strStr(string haystack, string needle) { 2 int n = needle.size(); 3 int res = -1; 4 if( needle.size() == 0) 5 return 0; 6 for(string::iterator it = haystack.begin() ; it != haystack.end(); ++it){ 7 if((*it) == needle[0]){ 8 bool isEqual = true; 9 bool isEnd = false;10 for(int i = 0 ; i < n; i++){11 if( it + i == haystack.end() ){12 isEnd = true;13 break;14 }15 if( needle[i] != *(it+i)){16 isEqual = false;17 break;18 }19 }20 if( isEnd == true )21 break;22 if( isEqual == true){23 res = it-haystack.begin();24 break;25 }26 27 }28 }29 return res;30 31 }