每日一练(力扣)

我的思路是暴力枚举:

情况1:相同,就让子串和原串同时后移继续比较

情况2:不相同,就只让原串后移

java 复制代码
public int strStr(String haystack, String needle) {
        if (haystack.length() < needle.length()){
            return -1;
        }
        for (int i = 0; i <= haystack.length() - needle.length(); i++) {
            int j = 0;
            //要使: i + j 不越界 因为j!=needle.length()  所以i 可以 =  haystack.length() - needle.length()
            while (j < needle.length() && haystack.charAt(i + j) == needle.charAt(j)){
                j++;
            }
            if (j == needle.length()){//最后一个元素也判断完
                return i;
            }
        }
        return -1;
    }
相关推荐
励志的小陈7 小时前
数据结构--二叉树知识讲解
数据结构
chools8 小时前
【AI超级智能体】快速搞懂工具调用Tool Calling 和 MCP协议
java·人工智能·学习·ai
李白你好8 小时前
TongWeb EJB 反序列化生成工具(Java-Chain 插件)
java·安全
leobertlan8 小时前
好玩系列:用20元实现快乐保存器
android·人工智能·算法
青梅橘子皮8 小时前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
笨笨饿8 小时前
#58_万能函数的构造方法:ReLU函数
数据结构·人工智能·stm32·单片机·硬件工程·学习方法
U盘失踪了9 小时前
Java 的 JAR 是什么?
java·jar
_深海凉_9 小时前
LeetCode热题100-有效的括号
linux·算法·leetcode
今天又在写代码9 小时前
java-v2
java·开发语言
competes10 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql