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

替换后的最长重复字符(LeetCode)

题目

        给你一个字符串 s 和一个整数 k 。你可以选择字符串中的任一字符,并将其更改为任何其他大写英文字符。该操作最多可执行 k 次。

        在执行上述操作后,返回 包含相同字母的最长子字符串的长度。

解题

def characterReplacement(s, k):count = {}max_len = 0left = 0max_count = 0for right in range(len(s)):# 统计右指针所指字符的出现次数count[s[right]] = count.get(s[right], 0) + 1# 更新当前窗口内出现最多字符的次数max_count = max(max_count, count[s[right]])# 如果需要改变的字符数量超过了k,移动左指针if (right - left + 1) - max_count > k:count[s[left]] -= 1left += 1# 更新最大长度max_len = max(max_len, right - left + 1)return max_lens = "ABAB"
k = 2
print(characterReplacement(s, k))  # 输出: 4
http://www.lryc.cn/news/428910.html

相关文章:

  • [sqlserver][sql]sqlserver查询表信息和字段信息
  • easypoi模板导出word并且合并行
  • 雨云美国二区E5v2服务器测评(非广告)
  • 前端form表单post请求
  • oracle共享池(shared pool):一、工作原理、组成部分 二、软硬解析过程
  • 设计模式六大原则中的里氏替换原则
  • 安装Cellpose
  • 图卷积神经网络算法
  • 【C#】System.Text.Json
  • 经典游戏,用java实现的坦克大战小游戏
  • linux开通端口命令
  • 5、并发锁机制之synchronized
  • 职场那些事:应对施暴者的智慧
  • 精细化管理和智慧化运营的智慧油站开源了。
  • vue项目配置基础路由vue-router
  • 2024年入职/转行网络安全,该如何规划?_网络安全职业规划
  • 【Python系列】执行 Shell 命令的六种方法
  • 2024华为OD机试真题-部门人力分配Python-C卷D卷-200分
  • 【Leetcode 1436 】旅行终点站—— 哈希表
  • springboot自动配置原理-面试题
  • 【C++题解】1140 - 亲密数对
  • 学习大数据DAY40 基于 hive 的数据处理
  • [数据集][目标检测]手钳检测数据集VOC+YOLO格式141张1类别
  • SQL注入(head、报错、盲注)
  • 30. 包含 min 函数的栈
  • 五、OpenTK图形渲染基础
  • 桔子哥/基于云快充协议1.5版本的充电桩系统软件-充电桩系统 -新能源车充电平台源码
  • 零基础5分钟上手亚马逊云科技-高可用Web系统设计最佳实践
  • 培训学校课程管理系统-计算机毕设Java|springboot实战项目
  • 基于STM32的智能婴儿床控制系统设计(手机APP+蓝牙无线控制)(210)