Implement strStr()

O(n*m)的时间复杂度的算法好很容易实现, kmp的话O(n+m)的时间复杂度也行,但O(n*m)的时间复杂度的算法2ms就过了。。。

int strStr(char *haystack, char *needle) {
    int index = -1,j;
    int lenhay = strlen(haystack);
    int lenneed = strlen(needle);
    for(int i = 0 ; i < lenhay-lenneed+1 ; i++){
        for(j = 0 ; j < lenneed&&i+j<lenhay; j++){
            if(needle[j]!=haystack[i+j]) break;
        }
        if(j == lenneed) {
            index = i;
            break;
        }
    }
    return index;
}

 

posted @ 2015-03-10 20:07  SprayT  阅读(111)  评论(0编辑  收藏  举报