栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

实现strStr()

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

实现strStr()

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。

说明:

当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。

对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与 C 语言的 strstr() 以及 Java 的 indexOf() 定义相符。

var strStr = function(haystack, needle) {
    if(haystack ==''||needle =='') return 0//判断字符串是否为空
    list1 = haystack.split('')
    list2 = needle.split('')
    let i,j=1,k=-1
    for(i=0;i 

对于此题我的思路是:

1、首先判断两个字符串是否为空,为空则返回0

2、将两个字符串转化为数组,方便比较

3、从haystack的第一项开始循环,判断needle的每一项否和它匹配,如果needle的长度唯一则直接返回下标即可

4、用k来记录下标的值

5、长度不为1的话继续判断之后的数,如果没有全部满足,则将j置为1,k置为-1

6、如果j等于needle的长度则代表找到了(这里加一个list2.length!=1是因为避开长度为一的时候但是第一此没有找出来的情况)

7、最后返回k的值即可

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/889195.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号