leetcode28-找出字符串中第一个匹配的下标

leetcode 28

思路

首先循环haystack,然后当当前字符和needle的首字母相同的时候截取出长度等于needle的字符串,进行比较是否相等,如果相等则说明当前index为第一个匹配的下标,如果不相等则说明不正确继续进行遍历,直到遍历完所有的都没有匹配到,则返回-1

实现

js 复制代码
var strStr = function(haystack, needle) {
    const len = needle.length;
    for(let i = 0;i < haystack.length - len + 1;i++){
        if(haystack[i] === needle[0]){
            const str = haystack.slice(i,i+len)
            if(str===needle){
                return i;
            }
        }
    }
    return -1
};
相关推荐
米粒112 分钟前
力扣算法刷题 Day 62 最短路算法
算法·leetcode·职场和发展
时空自由民.19 分钟前
三个按键的,短按1S,长按3S,单击,双击,三击的检测程序
大数据·数据库·计算机网络·算法
dog25023 分钟前
圆锥曲线命题的定义和证明
网络·算法·php
IT猿手34 分钟前
光伏模型参数估计:山羊优化算法(Goat Optimization Algorithm, GOA)求解光伏模型参数辨识问题,免费提供完整MATLAB代码链接
开发语言·算法·matlab·智能优化算法·光伏模型参数估计·光伏模型参数辨识·最新群智能算法
Cando学算法41 分钟前
欧拉回路(一笔画)
数据结构·c++·图论
嵌入式小企鹅1 小时前
大模型算法工程师面试宝典
人工智能·学习·算法·面试·职场和发展·大模型·面经
我不是懒洋洋1 小时前
手写一个并查集:从原理到最小生成树实战
c语言·c++·经验分享·算法
图码1 小时前
一文搞懂如何判断字符串是否为Pangram(全字母句)
数据结构·算法·网络安全·数字雕刻·ping++
小雅痞1 小时前
[Java][Leetcode hard] 30. 串联所有单词的子串
java·leetcode
khalil10201 小时前
代码随想录算法训练营Day-43 动态规划10 | 300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组
数据结构·c++·算法·leetcode·动态规划·子序列问题