LeetCode(28) Implement strStr()

这道题就是要求实现re里面的那个re.match()功能。
坑的地方主要就是在两个字符串都是空的时候。还有下面的代码可以更简化一点,内循环可以用判断haystack[i:i+len(needle)] == needle来实现,Python的切片功能还是很实用的。


下附AC代码:

class Solution:
    def strStr(self, haystack, needle):
        """
        :type haystack: str
        :type needle: str
        :rtype: int
        """
        if len(haystack) == 0:
            if len(needle) == 0 :
                return 0
            else: return -1
        for i in range(len(haystack)-len(needle)+1):
            flag = 1
            for j in range(len(needle)):
                if i+j<len(haystack) and haystack[i+j] == needle[j]:
                    continue
                else:
                    flag = 0
                    break
            if flag:
                return i
        return -1

猜你喜欢

转载自blog.csdn.net/gzhermit/article/details/78865448