滑动窗口
weixin_39137699
阳光,热情,幽默
展开
-
leetcode 560 和为K的子数组
给定一个整数数组和一个整数k,你需要找到该数组中和为k的连续的子数组的个数。 示例 1 : 输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。 说明 : 数组的长度为 [1, 20,000]。 数组中元素的范围是 [-1000, 1000] ,且整数k的范围是[-1e7, 1e7]。 思路: 暴力的二重循环,或者基...原创 2020-01-15 16:25:30 · 99 阅读 · 0 评论 -
leetcode 30串联所有单词的子串
给定一个字符串 s 和一些长度相同的单词 words。找出 s 中恰好可以由 words 中所有单词串联形成的子串的起始位置。 注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。 示例 1: 输入: s = “barfoothefoobarman”, words = [“foo”,“bar”] 输出:[0,9] 解释: 从索引 0 和 9 ...原创 2020-01-09 11:48:36 · 66 阅读 · 0 评论 -
leetcode 76 最小覆盖子串
给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。 示例: 输入: S = "ADOBECODEBANC", T = "ABC" 输出: "BANC" 说明: 如果 S 中不存这样的子串,则返回空字符串 ""。 如果 S 中存在这样的子串,我们保证它是唯一的答案。 思路: 滑动窗口,设立2个即可,或者2个数组,但是这个处理的是匹配量的问题。维...原创 2019-12-29 22:49:15 · 65 阅读 · 0 评论 -
leetcode 242,leetcode438,leetcode49
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 示例 1: 输入: s = “anagram”, t = “nagaram” 输出: true 示例 2: 输入: s = “rat”, t = “car” 输出: false 说明: 你可以假设字符串只包含小写字母。 进阶: 如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况? 思路:...原创 2019-11-25 16:21:37 · 80 阅读 · 0 评论 -
leetcode3 无重复字符的最长的子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 思路:基于Map的滑动窗口 非常能处理“dvdf”, 当dv进入Map, 再进d时,移除窗口前面的d,变成 vd,这样就能更新成vdf。非常高效。 class Solution { public int ...原创 2019-10-29 11:05:53 · 90 阅读 · 0 评论