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

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回  -1 

示例 1:

输入:haystack = "sadbutsad", needle = "sad"
输出:0
解释:"sad" 在下标 0 和 6 处匹配。
第一个匹配项的下标是 0 ,所以返回 0 。

示例 2:

输入:haystack = "leetcode", needle = "leeto"
输出:-1
解释:"leeto" 没有在 "leetcode" 中出现,所以返回 -1 。

方法一:暴力

public int strStr(Sting haystack, String needle){
    int m = haystack.length();
    int n = needle.length();
    for(int i = 0; i + n <= m; i++){
    // 如果判断到needle长度要大于haystack剩余的长度,就结束循环
        boolean flag = true;
        for(int j = 0; j < m; j++){
            if(haystack.charAt(i + j) != needle.charAt(j)){
                flag = false;
                break;
            }
        }
        if(flag) return i;
    }
    return -1;
}

方法二:KMP待补充

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-26 10:08:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-26 10:08:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-26 10:08:02       87 阅读
  4. Python语言-面向对象

    2024-03-26 10:08:02       96 阅读

热门阅读

  1. MySQL数据结构B树与B+树的区别

    2024-03-26 10:08:02       47 阅读
  2. Rust 的 HashMap 特定键值元素值的累加方法

    2024-03-26 10:08:02       44 阅读
  3. 007、IronPython与.NET Framework

    2024-03-26 10:08:02       36 阅读
  4. Matlab中mpower函数用法

    2024-03-26 10:08:02       45 阅读
  5. Zookeeper 的通知机制

    2024-03-26 10:08:02       49 阅读