python LeetCode 刷题记录 28

这篇具有很好参考价值的文章主要介绍了python LeetCode 刷题记录 28。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。文章来源地址https://www.toymoban.com/news/detail-712518.html

代码

class Solution:
    def strStr(self, haystack: str, needle: str) -> int:
        if not haystack or not needle:
            return 0
        for i, ss in enumerate(haystack):
            if i > len(haystack) - len(needle):
                return -1
            elif ss == needle[:1] and haystack[i:len(needle) + i] == needle:
                return i
        return -1

到了这里,关于python LeetCode 刷题记录 28的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LeetCode刷题记录——day1

    https://leetcode.cn/problems/h-index/description/?envType=study-plan-v2envId=top-interview-150 注:题目有点难理解,多读几遍 可以这样考虑,建立另一个临时数组 temp ,当第 i 篇文章被引用 citiations[i] 次时,令 j=citiations[i] 的 temp[j] 均加一,也就是现在对于任意 j 至少有 temp[j] 篇论文引用次数大

    2024年03月18日
    浏览(37)
  • LeetCode高频算法刷题记录4

    题目链接:https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/ 参考题解:https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/solution/er-cha-shu-de-zui-jin-gong-gong-zu-xian-by-leetc-2/ 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“

    2024年02月06日
    浏览(60)
  • C++ 之LeetCode刷题记录(十七)

    😄😊😆😃😄😊😆😃 开始cpp刷题之旅。 依旧是追求耗时0s的一天。 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false 这题目感觉还是比较简单的 先看根节点是否相同,再判断

    2024年01月25日
    浏览(45)
  • LeetCode刷题记录——day2

    https://leetcode.cn/problems/product-of-array-except-self/description/?envType=study-plan-v2envId=top-interview-150 问题在于不使用除法并且空间复杂度为 O(1) ,当第一次从头开始遍历时由于不知道后续数组元素是什么,所以无法得到答案,而如果当知道一个后续数组元素后,又回去更新答案的话,无

    2024年03月20日
    浏览(77)
  • C++ 之LeetCode刷题记录(十)

    😄😊😆😃😄😊😆😃 开始cpp刷题之旅,多学多练,尽力而为。 先易后难,先刷简单的。 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整

    2024年01月18日
    浏览(44)
  • LeetCode刷题记录——day4

    https://leetcode.cn/problems/trapping-rain-water/description/?envType=study-plan-v2envId=top-interview-150 对于一个可以构成“碗”的序列,最后装满水的话应该和最短的一边齐平,那么可以左右各遍历一次,记录每个元素位置对应的最短边高度,再对比就可以得出左右哪边最短 总结,对于一些左右

    2024年03月23日
    浏览(37)
  • C++ 之LeetCode刷题记录(十三)

    😄😊😆😃😄😊😆😃 开始cpp刷题之旅。 依旧是追求耗时0s的一天。 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例

    2024年01月19日
    浏览(44)
  • LeetCode刷题记录——day3

    1、https://leetcode.cn/problems/gas-station/submissions/514930619/?envType=study-plan-v2envId=top-interview-150 对于这个问题可以这样来考虑,将数据看作一个环,如果答案唯一,那么就意味着从任意一个节点开始寻找,最后都会得到同一个节点的答案,那么为何不直接从0节点开始呢? 其次,我们可

    2024年03月21日
    浏览(44)
  • C++ 之LeetCode刷题记录(十二)

    😄😊😆😃😄😊😆😃 开始cpp刷题之旅。 依旧是追求耗时0s的一天。 示例 1: 输入:x = 4 输出:2 示例 2: 输入:x = 8 输出:2 解释:8 的算术平方根是 2.82842…, 由于返回类型是整数,小数部分将被舍去。 思路:这种题目一看就是二分法,很简单的题目,耗时0s,看代码。

    2024年01月18日
    浏览(53)
  • LeetCode 刷题记录——从零开始记录自己一些不会的

    1. 最多可以摧毁的敌人城堡数目 题意 思路 两层循环,太low了 用一个变量记录前一个位置 代码 2. 到达终点的数字 题意 思路 代码 3. 单词的压缩编码 题意 思路 代码 思路2 去找到是否不同的单词具有相同的后缀,我们可以将其反序之后插入字典树中。例如,我们有 “time”

    2024年02月09日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包