Implement strStr()

Implement strStr().

Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

 

Subscribe to see which companies asked this question

Show Tags
Hide Similar Problems
 (H) Shortest Palindrome
 1.普通匹配 o(n*m)
class Solution {
public:
    int strStr(string haystack, string needle) {
        int haystackSize = haystack.size();
        int needleSize = needle.size();
        if(needleSize ==0){
            return 0;
        }
        int resIndex = 0;
        int i=0,j=0,k=0;
        while(i<haystackSize && j<needleSize){
            if(k>=haystackSize){
                break;
            }
            if(haystack[k]==needle[j]){
                k++;
                j++;
            }else{
                i++;
                k = i;
                j = 0;
            }
        }
        resIndex = j==needleSize ? i:-1;
        return resIndex ;
    }
};

2.KMP o(n)

posted @ 2015-12-07 19:59  zengzy  阅读(177)  评论(0编辑  收藏  举报
levels of contents