C语言/28.实现strStr()

先上题目:


思路:暴力解法(for循环遍历),这道题没有做好,效率太低,勉强通过了。后续更换答案

int strStr(char* haystack, char* needle) {
    int i,j,result=-1;
    if(needle[0]=='\0') return 0;
    if(strstr(haystack,needle)==NULL) return -1;
    for(i=0;i<strlen(haystack);i++){
        int count=0;
        for(j=0;j<strlen(needle);j++){
            if(haystack[i+j]==needle[j]){
                count++;
            }else break; 
        }
      if(count==strlen(needle)){
          result = i;
          break;
      }
    }
    return result;
}

猜你喜欢

转载自blog.csdn.net/qq_38959715/article/details/80789782