
滑动窗口
文艺范ya
慢慢来吧,谁都有努力的过程
展开
-
LeetCode——424. 替换后的最长重复字符
题目描述:给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次。在执行上述操作后,找到包含重复字母的最长子串的长度。注意:字符串长度 和 k 不会超过 104。示例 1:输入:s = “ABAB”, k = 2输出:4解释:用两个’A’替换为两个’B’,反之亦然。示例 2:输入:s = “AABABBA”, k = 1输出:4解释:将中间的一个’A’替换为’B’,字符串变为 “AABBBBA”。子串 “BBBB” 有最长重复字母, 答原创 2021-04-12 16:39:30 · 130 阅读 · 0 评论 -
LeetCode——1004. 最大连续1的个数 III
题目描述:给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 。返回仅包含 1 的最长(连续)子数组的长度。示例 1:输入:A = [1,1,1,0,0,0,1,1,1,1,0], K = 2输出:6解释:[1,1,1,0,0,1,1,1,1,1,1]粗体数字从 0 翻转到 1,最长的子数组长度为 6。示例 2:输入:A = [0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1], K = 3输出:10解释:[0,0,1,1原创 2021-04-12 15:33:06 · 137 阅读 · 0 评论 -
LeetCode——239. 滑动窗口最大值
题目描述:给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。提示:1 <= nums.length <= 105-104 <= nums[i] <= 1041 <= k <= nums.length示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:原创 2021-03-22 10:15:27 · 175 阅读 · 1 评论 -
LeetCode——643. 子数组最大平均数 I
题目描述:给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数。提示:1 <= k <= n <= 30,000。所给数据范围 [-10,000,10,000]。示例:输入:[1,12,-5,-6,50,3], k = 4输出:12.75解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75代码如下:class Solution { public double findMaxAverage(int[] nums, i原创 2021-02-04 09:27:10 · 202 阅读 · 0 评论 -
LeetCode——480. 滑动窗口中位数
题目描述:中位数是有序序列最中间的那个数。如果序列的大小是偶数,则没有最中间的数;此时中位数是最中间的两个数的平均数。给你一个数组 nums,有一个大小为 k 的窗口从最左端滑动到最右端。窗口中有 k 个数,每次窗口向右移动 1 位。你的任务是找出每次窗口移动后得到的新窗口中元素的中位数,并输出由它们组成的数组。提示:你可以假设 k 始终有效,即:k 始终小于输入的非空数组的元素个数。与真实值误差在 10 ^ -5 以内的答案将被视作正确答案例如:[2,3,4],中位数是 3[2,3]原创 2021-02-03 10:23:13 · 318 阅读 · 0 评论 -
LeetCode——1456. 定长子串中元音的最大数目
题目描述:给你字符串 s 和整数 k 。请返回字符串 s 中长度为 k 的单个子字符串中可能包含的最大元音字母数。英文中的 元音字母 为(a, e, i, o, u)。提示:1 <= s.length <= 10^5s 由小写英文字母组成1 <= k <= s.length示例 1:输入:s = “abciiidef”, k = 3输出:3解释:子字符串 “iii” 包含 3 个元音字母。示例 2:输入:s = “aeiou”, k = 2输出:2解释:任意原创 2021-02-02 16:30:38 · 321 阅读 · 1 评论 -
LeetCode——76. 最小覆盖子串
题目描述:给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。注意:如果 s 中存在这样的子串,我们保证它是唯一的答案。提示:1 <= s.length, t.length <= 105s 和 t 由英文字母组成示例 1:输入:s = “ADOBECODEBANC”, t = “ABC”输出:“BANC”示例 2:输入:s = “a”, t = “a”输出:“a”JAVA代码原创 2021-02-02 14:54:11 · 177 阅读 · 2 评论 -
567. 字符串的排列
题目描述:给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的排列。换句话说,第一个字符串的排列之一是第二个字符串的子串。注意:输入的字符串只包含小写字母两个字符串的长度都在 [1, 10,000] 之间示例1:输入: s1 = “ab” s2 = “eidbaooo”输出: True解释: s2 包含 s1 的排列之一 (“ba”).示例2:输入: s1= “ab” s2 = “eidboaoo”输出: FalseJAVA代码如下:class Solutio原创 2021-02-02 14:49:57 · 184 阅读 · 4 评论 -
剑指 Offer 48. 最长不含重复字符的子字符串
题目描述:请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不原创 2021-02-02 11:14:34 · 150 阅读 · 0 评论