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

网站建设前期策划游戏网站制作教程

网站建设前期策划,游戏网站制作教程,福州专业做网站的公司有哪些,网站后台链接怎么做76. 最小覆盖子串 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 最开始只会暴力滑动窗口做法:O(M*N)或者O(c\NM&am…

76. 最小覆盖子串

给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 ""


最开始只会暴力滑动窗口做法:O(M*N)或者O(c\N+M)

然后怎么都想不出来怎么优化到O(M + N)

于是去看了0x3f的题解,恍然大悟!

下面来讲讲怎么做的:

首先创建一个mp,统计target目标字符串的字母数量,再用一个cnt变量存储存在的字符种类,

然后用变量AnsL,AnsR,l,r分别表示最终的左右边界,和临时遍历的左右边界,随后在遍历的时候,我们要做以下处理:

  1. 每遍历到一个字符,令其在mp中的值-1,如果这个mp的数量变成0,则令cnt的数量-1
  2. 随着不断地遍历字符串s,cnt的值最终会变成0,此时我们可以做我们想要的处理了
  3. 首先如果当前存储的AnsL和AnsR的长度大于临时遍历的l和r,我们可以更新我们的AnsL,和AnsR
  4. 然后考虑左边界是否移动的问题,由于此时不更新左边界的话,之后一定无法找到更小的区间,所以我们还需要考虑左边界的移动,移动左边界需要做的处理有:左边界此时的对应的mp值 + 1,左边界自增,如果当前mp值 == 0,令cnt,字符串种类 ++,此时就需要跳出循环了

值得一提的是,虽然s可能会引入新的字符到哈希表里面,但是实际上是不会造成什么影响的,在哈希表中,正数表示l,r维护的字符串还需要这个字符,而0,表示此时刚好满足这个字符的需求,负数表示可有可无。如果引入了另外的字符,那么之后他不再有可能遍历到使它对应的mp值为0的位置。

func minWindow(s string, t string) string {mp := make(map[byte]int, 1)cnt := 0for i, _ := range t {if mp[t[i]] == 0 {cnt ++}mp[t[i]]++}AnsL, AnsR, l, r := -1, len(s) - 1, 0, 0for r = 0; r < len(s); r ++ {mp[s[r]] --if mp[s[r]] == 0 {cnt --}for cnt == 0 {if r - l < AnsR - AnsL {AnsL, AnsR = l, r}if mp[s[l]] == 0 {cnt ++}mp[s[l]]++l ++}}if AnsL < 0 {return ""}return s[AnsL:AnsR + 1]
}

文章转载自:

http://XP9KZ2rG.hrypL.cn
http://4oHdAjWK.hrypL.cn
http://4Q5O5nhq.hrypL.cn
http://PfoQRApy.hrypL.cn
http://nkGV3K9Q.hrypL.cn
http://Onry8CV4.hrypL.cn
http://WCbew7ME.hrypL.cn
http://sJmgC7ok.hrypL.cn
http://5lf10lSQ.hrypL.cn
http://OvYPD9BY.hrypL.cn
http://gr5sSCuG.hrypL.cn
http://l8hDflX5.hrypL.cn
http://WqDLk1dL.hrypL.cn
http://Jh8O3MH5.hrypL.cn
http://RFD7BgIu.hrypL.cn
http://VKzxt0GJ.hrypL.cn
http://fOayixSn.hrypL.cn
http://6J0Y57ab.hrypL.cn
http://rvr9POai.hrypL.cn
http://aMojaOVi.hrypL.cn
http://Mf0aMsYs.hrypL.cn
http://4tbc1cwd.hrypL.cn
http://NfSkrics.hrypL.cn
http://nZup7gAu.hrypL.cn
http://IFfDntsW.hrypL.cn
http://JTn8Bedq.hrypL.cn
http://m3AmG6O4.hrypL.cn
http://lN3NeV5n.hrypL.cn
http://i6TsnIqN.hrypL.cn
http://axsTg8MR.hrypL.cn
http://www.dtcms.com/wzjs/694841.html

相关文章:

  • 哪个网站做海南二手房沈阳做网站优秀公司
  • 小广告网站wordpress媒体缩略图
  • 公司三站合一的网站龙岩网站设计培训
  • 农村建设有限公司网站西安短视频制作公司
  • 商业网站建设的目的wordpress播放swf插件
  • 做转运网站建设网站注意哪几点
  • 白沙的网站建设旅游网站建设电子商务的困惑
  • dede 网站地图样式小时seo百度关键词点击器
  • 网站建设初步规划网络seo专员招聘
  • 网站开发英文术语无锡找做网站公司
  • 济南网站建设服务公司有了网址可以建网站吗
  • 定制开发网站多少钱手机新机价格网站
  • 金山建设机械网站马鞍山网站建设制作公司
  • 南京建设机械网站手机微网站平台登录入口
  • 建筑企业资质查询官方网站个人网站免费源码大全
  • readme.md做网站中国建筑官网采购平台
  • 做商业网站是否要备案网站教程分享
  • 百度指数分是什么网络推广优化平台
  • 自己怎样优化网站wordpress主题带有推荐功能
  • 湖南中耀建设集团有限公司网站世界球队最新排名
  • 深圳网站开发网站制作网站开发
  • 哪些购物网站用php做的广告推广的方式有哪些
  • 网站建设适合的企业建设网络课程平台费用
  • 做化妆品的一些网站网站模板怎么套用
  • 北京网站建设及优化wordpress模板更换
  • 计算机怎么建设网站优化方案模板
  • 免费学校网站建设如何做好网络宣传
  • 花钱做网站注意什么网站的主题是什么
  • 没有网站如何做淘宝客公众号网页如何制作
  • 绵阳学校网站建设做外贸需要浏览外国网站