28_Implement strStr

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了28_Implement strStr相关的知识,希望对你有一定的参考价值。

/*
 Implement strStr().

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

*/

解决思路:
  遍历haystack与needle,时间复杂度O(n^2)
 
class Solution {
public:
    int strStr(string haystack, string needle) {
        if(haystack.size()==0 && needle.size()==0) return 0;
        for(int i;i<haystack.size();i++){
            bool label =true;
            for(int j=0;j<needle.size();j++)
                if(haystack[i+j] != needle[j]) {
                    label = false;
                    break;}
            if(label)
                return i; 
        }
        return -1;
    }
};

discussion:

  题目类似字符串匹配,可参考KMP算法 https://en.wikipedia.org/wiki/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm

以上是关于28_Implement strStr的主要内容,如果未能解决你的问题,请参考以下文章

28. Implement strStr()

28. Implement strStr()

LeetCode - 28. Implement strStr()

28. Implement strStr()

28. Implement strStr()(js)

28. Implement strStr()