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

网站推广计划书包含哪些内容百度网盘首页

网站推广计划书包含哪些内容,百度网盘首页,网站做二级域名,wordpress 后台菜单修改题目描述: 字符串的 波动 定义为子字符串中出现次数 最多 的字符次数与出现次数 最少 的字符次数之差。 给你一个字符串 s ,它只包含小写英文字母。请你返回 s 里所有 子字符串的 最大波动 值。 子字符串 是一个字符串的一段连续字符序列。 代码思路…

题目描述:

字符串的 波动 定义为子字符串中出现次数 最多 的字符次数与出现次数 最少 的字符次数之差。

给你一个字符串 s ,它只包含小写英文字母。请你返回 s 里所有 子字符串的 最大波动 值。

子字符串 是一个字符串的一段连续字符序列。

代码思路:

  1. 预处理字符位置:首先统计每个字符在字符串中的所有出现位置,并在末尾添加一个哨兵值(字符串长度n),便于处理边界情况。
  2. 遍历字符对:对于每个字符对(M, m),使用双指针遍历它们的出现位置列表,动态调整窗口以最大化M的出现次数,同时最小化m的出现次数。
  3. 动态调整窗口
    • 当M的当前位置小于m的当前位置时,扩展窗口右端以增加M的计数。
    • 反之,扩展窗口右端以增加m的计数。
    • 当m的计数超过1时,收缩窗口左端以减少m的计数,确保m的计数不超过1。
  4. 计算波动值:在每次调整窗口后,若m的计数大于0,则计算当前窗口的波动值并更新全局最大值。

代码实现:

class Solution:def largestVariance(self, s: str) -> int:n = len(s)table = defaultdict(list)for i, c in enumerate(s):table[c].append(i)for t in table.values():t.append(n) # 加一个额外结尾,方便遍历result = 0for M in table.keys():Mq = table[M]for m in table.keys():if M == m: continuemq = table[m]Mleft = Mright = 0mleft = mright = 0Mc = mc = 0while Mq[Mright] != mq[mright]: # 都到达最后时都是 nif Mq[Mright] < mq[mright]:Mright += 1Mc += 1else:mright += 1mc += 1while mc > 1:# 最左侧直接就是一个更少的if mq[mleft] < Mq[Mleft]: mleft += 1mc -= 1# 最左侧弹出一个多的一个少的else:mleft += 1Mleft += 1mc -= 1Mc -= 1if mc:result = max(result, Mc - mc)return result

 

http://www.dtcms.com/wzjs/124942.html

相关文章:

  • 怎么添加网站程序广州建网站的公司
  • 胶州家园网站建设网盟推广是什么意思
  • 陇南市建设局网站网络舆情监测
  • 美国服务器ip地址免费网站seo视频狼雨seo教程
  • 做网站包括图片设计吗谷歌google官网下载
  • 桐乡网站二次开发怎样建网站
  • 局域网内服务器做网站网络推广外包内容
  • 龙海市城乡规划建设局网站免费域名申请
  • 小程序商城模板免费在线刷seo
  • 网站制作方案书销售人员培训课程有哪些
  • 福州企业高端网站建设制作哪家好宁波seo关键词优化
  • 论坛网站制作费用2023年8月份新冠
  • 届毕业设计代做网站店铺运营方案策划
  • 贵阳工程建设招聘信息网站独立站seo优化
  • 五年级信息做网站的软件bing搜索 国内版
  • 网址免费生成app东莞关键字排名优化
  • 用xp做网站是否先搭建iiskol营销模式
  • 深圳福田网站优化网络营销培训学校网站优化设计的基础是网站基本要素及每个细节的优化
  • 做微信封面模板下载网站百度seo服务
  • 竹溪县县建设局网站百度搜索服务
  • 网站建设有什么系统百度地图优化
  • bitcoind 做交易网站公司网址怎么制作
  • 网站建设用宝塔网站维护需要多长时间
  • 制作公司网站哪个好啥是网络推广
  • 宜春网站建设公司哪家好重庆seo建站
  • 惠州做网站首选惠州邦批量外链工具
  • 自己网站怎么做优化优化营商环境 提升服务效能
  • 西安网站开发公司排名宁夏百度公司
  • wordpress 按作者分类seo网站关键词优化哪家好
  • 网页工具大全seo的优点