滑动窗口
300+剑指of 中不会的滑动窗口
水之积也不厚,则其负大舟也无力
渣硕求个大厂实习。。。
展开
-
LeetCode 395. 至少有K个重复字符的最长子串
题解//循环26次,没次限定符合条件的不同字符有1,2,3.....26次class Solution { public int longestSubstring(String s, int k) { int res = 0; for(int i = 1; i <= 26; i++){ res = Math.max(res, helper(s, k, i)); } return res; }.原创 2021-02-03 21:29:49 · 64 阅读 · 0 评论 -
LeetCode 76. 最小覆盖子串
好题解class Solution { public String minWindow(String s, String t) { HashMap<Character, Integer> need = new HashMap<Character, Integer>(); HashMap<Character, Integer> window = new HashMap<>(); for (char c .原创 2021-02-03 20:31:18 · 57 阅读 · 0 评论 -
LeetCode 480. 滑动窗口中位数
官方题解class Solution { public double[] medianSlidingWindow(int[] nums, int k) { DualHeap dh = new DualHeap(k); for (int i = 0; i < k; ++i) { dh.insert(nums[i]); } double[] ans = new double[nums.length - k .原创 2021-02-03 07:55:31 · 84 阅读 · 0 评论 -
剑指 Offer 59 - II. 队列的最大值
题解class MaxQueue { Queue<Integer> q; Deque<Integer> d; public MaxQueue() { q = new LinkedList<Integer>(); d = new LinkedList<Integer>(); } public int max_value() { if (d.isEmpty()).原创 2021-02-02 23:13:40 · 133 阅读 · 0 评论 -
剑指 Offer 59 - I. 滑动窗口的最大值
题解class Solution { public int[] maxSlidingWindow(int[] nums, int k) { if(nums == null || nums.length<k || k<1){ return new int[0]; } //#1 LinkedList<Integer> queue = new LinkedList<>(); .原创 2021-02-02 21:34:22 · 71 阅读 · 0 评论 -
LeetCode 424. 替换后的最长重复字符
官方题解public class Solution { public int characterReplacement(String s, int k) { int len = s.length(); if (len < 2) { return len; } char[] charArray = s.toCharArray(); int left = 0; int r.原创 2021-02-02 11:22:46 · 88 阅读 · 0 评论