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

【424. 替换后的最长重复字符】

Leetcode算法练习 笔记记录

  • 424. 替换后的最长重复字符

424. 替换后的最长重复字符

这里还是借用Leetcode1004的思想,把问题变成将其他字符替换为目标字符后哪一种最长

    public int characterReplacement(String s, int k) {//如果只有1个直接返回1if (s.length() == 1) {return 1;}//如果是同一种字符串,直接返回长度,因为直接是最长的char[] array = s.toCharArray();Set<Character> set = new HashSet<>();for (char c : array) {set.add(c);}if (set.size() == 1) {return s.length();}int max = Integer.MIN_VALUE;for (char c : set) {int curMax = handle(k, array, c);max = Math.max(max, curMax);}return max;}private static int handle(int k, char[] array, char target) {int max = 0;int left = 0;int replaceCount = 0;for (int right = 0; right < array.length; right++) {if (array[right] != target) {replaceCount++;}while (replaceCount > k) {if (array[left] != target) {replaceCount--;}left++;}max = Math.max(max, right - left + 1);}return max;}

相关文章:

  • linux字符模式关闭光标
  • 第34节:迁移学习中的特征提取方法
  • 九、日志分析和系统故障排查
  • 【Python3教程】Python3 文件(File)方法详解
  • 痉挛性斜颈护理指南:多维度守护颈部健康
  • 自动化测试报告工具
  • 课外知识:Python方法绑定机制与装饰器传参详解 与 实战
  • 各个网络协议的依赖关系
  • Labview使用报表工具
  • 谷歌开源医疗领域AI语言模型速递:medgemma-27b-text-it
  • 深入剖析 Doris 倒排索引(上):原理与应用全解析​
  • 【C/C++】深入解析Linux下C/C++内存管理全攻略(纲要)
  • 在政务中使用仙盟创梦工具维护曲靖市麒麟公安分局————仙盟创梦IDE
  • JVM常量池(class文件常量池,运行时常量池,字符串常量池)
  • 互联网大厂Java求职面试:AI大模型推理优化与实时数据处理架构
  • CRichEditCtrl 控件实现日志输出
  • 从零基础到最佳实践:Vue.js 系列(7/10):《常用内置 API 与插件》
  • 基于RFSOC49DR-16收16发 PCIE4.0 X8 射频采集卡
  • AI相关的笔记
  • Python迭代器与生成器:大数据处理的内存革命
  • 平台搭建大概多少钱/北京官网优化公司
  • 99到家微网站什么做的/关键词全网搜索
  • 网站维护总结/无锡seo网站管理
  • 阿克苏网站建设价格/网络营销的功能有哪些?
  • 那些开店的网站是自己做的吗/南京seo网站优化
  • 腾讯云建设网站教程/西安seo外包平台