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

上海网站制作案例上海企业网站建设公司名

上海网站制作案例,上海企业网站建设公司名,温州网站制作公司,无锡电子商城网站建设Leetcode 3031. Minimum Time to Revert Word to Initial State II 1. 解题思路2. 代码实现 题目链接:3031. Minimum Time to Revert Word to Initial State II 1. 解题思路 这一题就是一个z算法的题目,算是比较套路的题目了。 关于z算法&#xff0c…
  • Leetcode 3031. Minimum Time to Revert Word to Initial State II
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3031. Minimum Time to Revert Word to Initial State II

1. 解题思路

这一题就是一个z算法的题目,算是比较套路的题目了。

关于z算法,之前我们已经写过一个博客(经典算法:Z算法(z algorithm))对这个经典算法本身进行了一下介绍,这里就不展开了,有兴趣的读者可以自行跳转去看一下,或者网上随便其他找一个介绍文章也可以,挺常见的一个算法了。

因此,我们就只看一下z算法是如何应用到这道题目就行了。显然,由于每次移除前k个字符,然后再最后补充k个字符,因此,如果存在某次移除k个字符之后,剩余的子串与原始字符串的开头部分完全一致,那么,我们只需要在后续进行余留的字符补充即可。

而如果知道删除完一轮都无法找到任何字符它的后续子串恰好为原始字符串开头的部分,那么我们也没有关系,总可以删完重排的。

因此,我们要做的就是求取每一个位置的后续子串与原始子串的最长公共头部序列,而这就是z算法要做的事情。

综上,我们先调用一次z算法之后用一个while循环遍历一边即可得到最终答案。

2. 代码实现

给出python代码实现如下:

def z_algorithm(s):n = len(s)z = [0 for _ in range(n)]l, r = -1, -1for i in range(1, n):if i > r:l, r = i, iwhile r < n and s[r-l] == s[r]:r += 1z[i] = r-lr -= 1else:k = i - lif z[k] < r - i + 1:z[i] = z[k]else:l = iwhile r < n and s[r-l] == s[r]:r += 1z[i] = r-lr -= 1z[0] = nreturn zclass Solution:def minimumTimeToInitialState(self, word: str, k: int) -> int:z = z_algorithm(word)ans, idx, n = 0, 0, len(word)while True:idx += kans += 1if idx >= n or z[idx] == n-idx:breakreturn ans

提交代码评测得到:耗时538ms,占用内存21.2MB。

http://www.yayakq.cn/news/445985/

相关文章:

  • 做网站网站需要吉林seo推广系统
  • 呼市做无痛人流z首大网站平面设计接单报价表
  • 链接制作网站网站空间商是什么
  • 做景观要知道哪些网站哔哩哔哩视频大全
  • 网站开发资金预算广元企业网站建设
  • dedecms小说网站模板下载网站优化哪里可以做
  • 建一个网站的手机电脑网站空间多少
  • 利于优化的网站wordpress postid
  • wordpress架站教程怎么做服务器网站
  • 公司网站建设进度计划书做网站用是内网穿透好
  • 网站建设百度文库专业的vi设计企业
  • 做调查赚钱的网站有哪些临淄信息港招聘
  • 网站后台地址破解小企业网站如何建设好
  • 厦门网站建设报网站规划的解释
  • 四川西充县建设局网站vue做网站首页
  • 网站设计做什么赤峰网站开发red
  • 机械设备网站建设有哪些新手做外链的网站
  • 网站建设天津南昌seo推广
  • 甘肃省城乡建设局网站酒庄企业网站
  • 网站开发刷新图片wordpress菜单移动
  • 公司网站备案是什么意思网站策划的知识
  • 为了爱我可以做任何事俄剧网站北京网站开发培训中心
  • 如何制作自己的网站 可放广告网站备案手续
  • 建立网站需要哪些费用预约代码 wordpress
  • 网站如何做ICP备案企业怎样做网站
  • 常见的网站空间沈阳网站建设方案
  • 网站群 优点做网站维护难吗
  • 做招聘网站排名wordpress获取页面文章内容的代码
  • 做网站需要的图片seo 能提高网站速度吗
  • 怎么用虚拟主机做网站步骤logo在线设计生成器标智客