当前位置: 首页 > news >正文

网站301重定向检测wordpress模板QQ评论

网站301重定向检测,wordpress模板QQ评论,学校网站开发报价表,制作公司网站教程1 题目地址 28. 找出字符串中第一个匹配项的下标 - 力扣(LeetCode)28. 找出字符串中第一个匹配项的下标 - 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始&…

1 题目地址

28. 找出字符串中第一个匹配项的下标 - 力扣(LeetCode)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 。 提示: * 1 <= haystack.length, needle.length <= 104 * haystack 和 needle 仅由小写英文字符组成https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/description/


2 题目说明

给你两个字符串 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 。

提示:

  • 1 <= haystack.length, needle.length <= 104
  • haystack 和 needle 仅由小写英文字符组成

3 解题思路

方式一:暴力方式:两层循环
1、假设字符串haystack长度是m,needle长度是n
2、haystack匹配needle最多需要循环次数是m-n+1
3、第一层循环是最多需要遍历的次数m-n+1,即haystack的起始的索引下标位置
4、第二层循环每次都是从0开始最大到needle长度n,判断两层的指向的字符是否相等,
        不相等:直接跳出第二层循环
        相等:第二层是否遍历到needle的末尾
                是:直接返回第一层索引下标(结果)
                否:上下两层同时向后移动

方式二:KMP(目前还不会后续补充)

4 代码编写


4.1 暴力方式

class Solution {public int strStr(String haystack, String needle) {char[] haystackArray = haystack.toCharArray();char[] needleArray = needle.toCharArray();int haystackLength = haystackArray.length;int needleLength = needleArray.length;// 需要匹配的次数int need = haystackLength - needleLength + 1;for (int i=0; i<need; i++) {int left = i;int needleInit = 0;while (needleInit<needleLength) {// 字符相等if (haystackArray[left] == needleArray[needleInit]) {// 最后一个元素也匹配直接返回if (needleInit == needleLength-1) {return i;}// 否则都向后移动left++;needleInit++;} else {// 不相等,直接跳出本层循环break;}}}return -1;}}

简化上面代码方式:

class Solution {public int strStr(String haystack, String needle) {char[] haystackArray = haystack.toCharArray();char[] needleArray = needle.toCharArray();int haystackLength = haystackArray.length;int needleLength = needleArray.length;// 需要匹配的次数int need = haystackLength - needleLength + 1;for (int i=0; i<need; i++) {int left = i;int needleInit = 0;// 匹配则向后移动while (needleInit<needleLength && haystackArray[left] == needleArray[needleInit]) {left++;needleInit++;}// 最后一个元素也匹配直接返回if (needleInit == needleLength) {return i;}}return -1;}}


4.2 KMP(目前还不会后续补充)

http://www.dtcms.com/a/444373.html

相关文章:

  • 做网站软文怎么弄公司网站制作公司倒闭
  • 做网站交付标准南宁会员网站制作
  • 做h5哪个网站好用佛山网站优化公司
  • 深度模型瘦身术:从100MB到5MB的工业级压缩实战
  • 建筑类电商网站玉林英文网站建设
  • 怎么做网站内容榆林网站建设公司
  • 域名注册服务的公司网站信用网站建设内容
  • 帮人做项目的网站攀枝花市建设银行网站
  • 超可爱做头像的网站西安建设工程网
  • 微信公众平台 网站 对接合肥网站建设套餐
  • 做招聘信息的网站有哪些方面公共服务标准化的意义
  • 网站漂浮物怎么做企业网站的设计思路
  • 济南商城网站制作ftp怎么上传wordpress
  • 合肥做个网站什么价格官方网站页面尺寸
  • 爱途 中山网站制作宁波标志设计公司
  • 第4讲:分支和循环(下)——猜数字游戏实战
  • 数据网站火车头 wordpress 4.8
  • 教做面包的网站做网站电销
  • 中文网站建设中模板关键词做网站标题是什么意思
  • 企业网站源码哪个好徐州手工活外发加工网
  • 网站开发问题广告设计模板素材图片
  • 变装小说第三性wordpress谷歌seo需要做什么的
  • 新华美玉官方网站在线做wordpress主题外贸
  • 免费网站注册免费创建网站商标设计软件生成器
  • 网站seo快排软件怎么做网站优化 sit
  • 常州外贸集团 网站建设ghost系统怎么卸载wordpress
  • 一个服务器可以做多个网站吗php会了 怎么做网站
  • 网页设计与网站建设专业做网站有哪个软件好
  • 莆田企业网站建设it外包 源码
  • 企业公司做网站wordpress 随机页面