340. 至多包含 K 个不同字符的最长子串

class Solution {public int lengthOfLongestSubstringKDistinct(String s, int k) {HashMap<Character, Integer> map = new HashMap<>();int start = 0;int maxLen = 0;for (int end = 0; end < s.length(); end++) {if (!map.containsKey(s.charAt(end))) {map.put(s.charAt(end), 1);} else {map.put(s.charAt(end), map.get(s.charAt(end)) + 1);}while (map.size() > k) {map.put(s.charAt(start), map.get(s.charAt(start)) - 1);if (map.get(s.charAt(start)).equals(0)) {map.remove(s.charAt(start));}start++;}maxLen = Math.max(maxLen, end - start + 1);}return maxLen;}
}

LeetCode 340. 至多包含 K 个不同字符的最长子串相关推荐

  1. LeetCode 340. 至多包含 K 个不同字符的最长子串 (滑动窗口)

    340. 至多包含 K 个不同字符的最长子串 class Solution {public int lengthOfLongestSubstringKDistinct(String ss, int k ...

  2. LeetCode 340. 至多包含 K 个不同字符的最长子串(滑动窗口)

    文章目录 1. 题目 2. 解题 1. 题目 给定一个字符串 s ,找出 至多 包含 k 个不同字符的最长子串 T. 示例 1: 输入: s = "eceba", k = 2 输出 ...

  3. leetcode——340.至多包含 K 个不同字符的最长子串

    题目--对不同字符个数进行k的限定 思路 利用双指针实现滑动窗口 滑动窗口对不同字母进行计数 移动右指针 当不同字符个数大于k 移动左指针 如何统计不同字符的个数?--哈希表的size 当出现次数为0 ...

  4. LeetCode算法日记:340.至多包含K个不同字符的最长子串

    340.至多包含K个不同字符的最长子串 日期:2022/7/30 题目描述:给定一个字符串 *s* ,找出 至多 包含 k 个不同字符的最长子串 *T*. 示例: 输入: s = "eceb ...

  5. 340. 至多包含K个不同字符的最长子串

    340. 至多包含 K 个不同字符的最长子串 难度:中等 给定一个字符串 s ,找出 至多 包含 k 个不同字符的最长子串 T. 示例 1: 输入: s = "eceba", k ...

  6. 【LeetCode430】至多包含 K 个不同字符的最长子串

    340. 至多包含 K 个不同字符的最长子串 难度困难91收藏分享切换为英文接收动态反馈 给定一个字符串 s ,找出 至多 包含 k 个不同字符的最长子串 T. 示例 1: 输入: s = " ...

  7. 滑动窗口—至多包含 K 个不同字符的最长子串(leetcode 340)

    题目描述 给定一个字符串 s ,找出 至多 包含 k 个不同字符的最长子串 T. 示例 1: 输入: s = "eceba", k = 2 输出: 3 解释: 则 T 为 &quo ...

  8. Leetcode——至多包含K个不同字符的最长子串

    1. 至多包含两个不同字符的最长子串 (1)滑动窗口 动态地维护一个滑动窗口,如果检测到窗口内出现了超过两个不同的字符,则将窗口整体右移一格. 否则,将滑动窗口向右扩张一格. 最后返回滑动窗口的长度 ...

  9. leetcode340. 至多包含 K 个不同字符的最长子串

    给定一个字符串 s ,找出 至多 包含 k 个不同字符的最长子串 T. 示例 1: 输入: s = "eceba", k = 2 输出: 3 解释: 则 T 为 "ece ...

最新文章

  1. 解析第一高中教育首份成绩单:营利双增,轻资产模式成“杀手锏”
  2. 编程基本功:有了范例代码,怎么办?
  3. 新的JMetro JavaFX 11兼容版本
  4. 陈正康考研英语长难句 51~75
  5. [转载] 面试常见问题总结
  6. 用stack实现括号匹配
  7. 如何安装WinDriver—linux 系统下和Windows系统下———官网中文教程
  8. 16.Linux网络编程
  9. linux ftp pure,linux下安装FTP(pure-ftpd)
  10. 宽带和下载速度(下载速率)之间的区别
  11. ①. SpringBoot整合PageOffice实现在线编辑Word和Excel
  12. 你好,女神节有个给你的惊喜请查收
  13. 【文献摘录】FaceRevelio: A Face Liveness Detection System forSmartphones with a Single Front Camera
  14. 关于移动视频直播技术,关键干货都在这里了(三)编码和封装
  15. 项目管理(如何做一个优秀的项目经理)
  16. 主板usb接口全部失灵_主机usb接口没反应,台式电脑usb接口全部失灵
  17. 【三维路径规划】基于matlab复杂三维地形的无人机路径规划【含Matlab源码 2171期】
  18. hook ZwQuerySystemInformation 隐藏进程
  19. 全球十大资质正规现货黄金交易平台排名榜单(最新版汇总)
  20. 信息收集(六)之cms识别

热门文章

  1. POM思想__多个页面时进行的处理
  2. 【NOIP模拟赛】超级树 DP
  3. HDU 5680 zxa and set 水题
  4. 你的灯亮着吗?阅读笔记之三
  5. 计算机组成 冯诺依曼体制
  6. 最简单的flex bison例子
  7. CSDN第一次写博客时的模板
  8. Linux下在tomcat上部署项目
  9. ubuntu18机器学习环境安装基于anaconda
  10. edge无法打印pdf_一文搞定PDF无法复制/打印/编辑