代码随想录算法训练营第九天| 28. 实现 strStr()、459.重复的子字符串、字符串总结、双指针回顾

一、今日任务

28. 实现 strStr()

459.重复的子字符串

字符串总结

双指针回顾

二、找出字符串中第一个匹配项的下标

2.1 题目:28. 找出字符串中第一个匹配项的下标

2.2 解题过程

拿到题目能够第一时间想到思路是直接对比,以下是通过代码。

class Solution(object):
    def strStr(self, haystack, needle):
        """
        :type haystack: str
        :type needle: str
        :rtype: int
        """
        index = -1
        if len(haystack) < len(needle):
            return -1
        elif len(haystack) == len(needle) and haystack != needle:
            return -1
        else:
            hay = 0
            nee =0
            while hay < len(haystack)-len(needle) + 1:
                if haystack[hay] == needle[nee]:
                    index = hay
                    flag = 1
                    while nee < len(needle):
                        if haystack[hay] != needle[nee]:
                            hay = index + 1
                            index = -1
                            nee = 0
                            flag = 0
                            break
                        nee += 1
                        hay += 1
                    if flag:
                        return index
                else:
                    nee = 0
                    index = -1
                    hay += 1

        return index

2.3 阅读材料改进

建议二刷看。

三、重复的子字符串

3.1 题目:459. 重复的子字符串

3.2 解题过程

拿到题目第一时间没有思路。

3.3 阅读材料改进

二刷再看。

四、字符串:总结篇

4.1 阅读内容即可

五、双指针回顾

5.1 阅读内容即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值