专栏首页刷题笔记【LeetCode】 实现 strStr()

【LeetCode】 实现 strStr()

版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/shiliang97/article/details/103187865

Implement strStr().

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

Example 1:

Input: haystack = "hello", needle = "ll"
Output: 2

Example 2:

Input: haystack = "aaaaa", needle = "bba"
Output: -1

Clarification:

What should we return when needle is an empty string? This is a great question to ask during an interview.

For the purpose of this problem, we will return 0 when needle is an empty string. This is consistent to C's strstr() and Java's indexOf().

应该用KMP,但是没用KMP好像也过去了。。。。。

int strStr(char * haystack, char * needle){
    int i = 0,j =0,t=i;//一定要有t
    while (haystack[i]&&needle[j]){
        if (haystack[i] == needle[j]){
            i++;
            j++;
            continue;
            //C 语言中的 continue 语句有点像 break 语句。但它不是强制终止,continue 会跳过当前循环中的代码,强迫开始下一次循环。
        } else{
            t=t+1;
            i=t;
            j=0;
        }
    }
    //如果needle串到了结尾的时候,代表顺利找到
    if (needle[j] == '\0'){
        return t;
    }
    //否则返回-1,没找到
    return -1;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HCIP笔记 | IS-IS 协议 中间系统到中间系统(一)

    运行 IS-IS 协议的路由器必须有一个必须有一个被称为 NET (Network Entity Title)的网络地址,NET 也称为网络实体名,长度为 8 ...

    网络技术联盟站
  • 3-数据存储之文件存储(1)

    我们前面很少将提取的数据或者获取的源码保存下来;其实日常的工作中在解析出数据后接下来就是存储数据。

    xbhog
  • Python要点总结,我使用了100个小例子!

    类型检查是一个验证和施加类型约束的过程,编译器或解释器通常在编译或运行阶段做类型检查。例如,你不能拿一个string类型值除以浮点数。

    石晓文
  • 【干货】22道机器学习常见面试题目

    有监督学习:对具有概念标记(分类)的训练样本进行学习,以尽可能对训练样本集外的数据进行标记(分类)预测。这里,所有的标记(分类)是已知的。因此,训练样本的岐义性...

    石晓文
  • Python | Python学习之深浅拷贝

    == 是 python 标准操作符中的比较操作符,用来比较判断两个对象的 value(值) 是否相等 。

    小小詹同学
  • H3C | S6X00系列交换机策略路由配置案例

    本案例适用于如S6300-52QF、S6520X-30QC-HI、S6800-54QT、S6820-4C S6900-2F等S6X00系列的交换机

    网络技术联盟站
  • 教你如何用对象照片生成二维码 。

    $ myqr "http://weixin.qq.com/r/PnUmPg7E8lONrUpd9yAs" line 16: mode: byte Succeed...

    小小詹同学
  • Jenkins流水线环境变量权威指南

    欢迎来到“Jenkins CookBook”系列的第一篇博客文章。今天,我们专注于有效地使用Jenkins Pipeline环境变量。您将学习如何定义env变量...

    泽阳
  • Python+OpenCV的图像读取、显示、保存

    一、图像的读取 图像的读取主要函数是cv2.imread()。 函数格式:Mat cv::imread (const String & filena...

    菲宇
  • 为什么机器学习模型在生产中会退化?

    由于意外的机器学习模型退化导致了几个机器学习项目的失败,我想分享一下我在机器学习模型退化方面的经验。实际上,有很多关于模型创建和开发阶段的宣传,而不是模型维护。...

    石晓文

扫码关注云+社区

领取腾讯云代金券