28. Implement strStr()

https://leetcode.com/problems/implement-strstr/#/description

Implement strStr().

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

Sol:

Needle is a short block string while haystack is a long block string. Move the short block to check if it is in the long block.

class Solution(object):
    def strStr(self, haystack, needle):
        """
        :type haystack: str
        :type needle: str
        :rtype: int
        """
        for i in range(len(haystack) - len(needle) + 1):
            if haystack[i:i + len(needle)] == needle:
                return i 
        return -1

Other solutions may use KMP algorithm...

原文地址:https://www.cnblogs.com/prmlab/p/6958407.html