Implement strStr() 字符串匹配

Implement strStr().

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

Update (2014-11-02):
The signature of the function had been updated to return the index instead of the pointer. If you still see your function signature returns a char * or String, please click the reload button  to reset your code definition.

 

Hide Tags
 Two Pointers String
 
class Solution {
public:
    int strStr(char *haystack, char *needle) {
        int hayl=strlen(haystack);
        int nel=strlen(needle);
        for(int i=0;i<=hayl-nel;++i){
            char *h=haystack+i;
            char *n=needle;
            while(*n!='\0'){
                if(*n!=*h)
                    break;
                else{
                    ++h;
                    ++n;
                }
            }
            if(*n=='\0')
                return i;
        }
        return -1;
    }
};

 

posted @ 2014-11-18 19:07  li303491  阅读(91)  评论(0编辑  收藏  举报