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

中国建设企业网站官网直播app下载汅api免费下载

中国建设企业网站官网,直播app下载汅api免费下载,永州市建设工程质量安全监督站官方网站,网站建设微信公众号文章28 实现 strStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串#xff0c;在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在#xff0c;则返回 -1。 示例 1: 输入: haystack “hello”, needle “ll” 输出: 2 示例…28 实现 strStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在则返回 -1。 示例 1: 输入: haystack “hello”, needle “ll” 输出: 2 示例 2: 输入: haystack “aaaaa”, needle “bba” 输出: -1 说明: **当 needle 是空字符串时我们应当返回什么值呢这是一个在面试中很好的问题。 对于本题而言当 needle 是空字符串时我们应当返回 0 **。这与C语言的 strstr() 以及 Java的 indexOf() 定义相符。 思路 首先是模式串匹配问题需要先在hatstack文本串中找到needle子串模式串然后再去考虑求这个索引。第一个问题就涉及到KMP算法。KMP的经典思想就是当出现字符串不匹配时可以记录一部分之前已经匹配的文本内容利用这些信息避免从头再去做匹配。 以下代码随想录文字详细说明了KMP算法 https://www.programmercarl.com/0028.%E5%AE%9E%E7%8E%B0strStr.html#%E6%80%9D%E8%B7%AF 解法一-前缀表减一 class Solution(object):# 第一步 首先要求next数组def getNext(self, next, s): # s表示模式串# 初始化j -1next[0] jfor i in range(1, len(s)): # 注意i从1开始 因为要比较 i 和 j是否相同# 前后缀不相同 while j0 and s[i]!s[j1]:j next[j] # j回退# 前后缀相同if s[i]s[j1]:j 1 # i和j都加1next[i] j# 第二步 求下标索引def strStr(self, haystack, needle)::type haystack: str:type needle: str:rtype: intif not needle:return 0next [0]*len(needle) # 初始化nextself.getNext(next, needle)j -1for i in range(len(haystack)):while j 0 and haystack[i]!needle[j1]: # j1是因为j初始值为-1j next[j] # next数组起作用了 找下一个匹配的位置if haystack[i]needle[j1]: # 匹配到字符相同j 1# 判断在文本串里出现了模式串if j len(needle) - 1:return i - len(needle) 1 # 返回索引return -1暴力法 class Solution(object):def strStr(self, haystack, needle)::type haystack: str:type needle: str:rtype: intm, n len(haystack), len(needle)for i in range(m):if haystack[i:in] needle:return ireturn -1 使用index写算法题不推荐 class Solution:def strStr(self, haystack: str, needle: str) - int:try:return haystack.index(needle)except ValueError:return -1使用find写算法题不推荐 class Solution:def strStr(self, haystack: str, needle: str) - int:return haystack.find(needle)
http://www.hkea.cn/news/14584806/

相关文章:

  • python毕业设计做网站常州转化率网站建设公司怎么样
  • 泉州手机网站制作国外网站推广宣传
  • 网络营销做女鞋的网站设计鄂州手机网站建设
  • 长沙营销网站建站公司辽宁建设工程信息网查询系统
  • 网站开发岗位之间的关联水务行业国企门户网站建设
  • 河南网站建设设计价格外贸网站模
  • 那些网站可以接私活做阿里巴巴网站制作
  • 服装怎么做网站推广手机网站建设地址
  • 新公司注册工商核名系统南通网站建设推广优化
  • 网站上动画视频怎么做安徽建设工程信息网实名制怎么解聘
  • 花卉网站建设策划方案下载新华社app
  • 只做女性的网站深圳网站建设公司哪家最好
  • 安庆网站制作wordpress汉化免费企业主题
  • 网站建设一般收费北京建网站哪家公司好
  • 网站开发制作心得松岗网站设计
  • 网站建设 英文怎么说江苏seo策略
  • 网站维护的要求网站建设管理工作情况报告
  • 好的建筑设计网站网站建设 维护费用
  • 天水做网站的电子商务网站建设 臧良运 好不好
  • 网站建设和数据库维护做导航网站成本
  • wordpress开发企业网站济南高端网站设计
  • 做网站是前端还是后端贴心的广州网站建设
  • 网站内容规划流程如何修改上线网站
  • 南京网站建设学习网站建设咨询客户话术
  • 网站接入协议及接入商资质宿迁网站建设公司
  • 交换广告是两个网站做友情链接吗泉州建设银行网站
  • 专业建设验收网站石家庄网站建设远策科技
  • 快速优化网站排名的方法ui设计的就业前景
  • 大邯郸网站长春seo全网营销
  • 深圳网站推广策划网站怎么做网络推广