核心原理 滑动时间窗口的核心原理是: 我们先确认一个窗口,这个创建就是一个单位时间,比如10s, 统计10s内某个Redis的Key访问次数,这个10s就是一个单位时间窗口,...
一句话概括就是:将链表以x为标定点分隔成两部分既然是 2 部分,就可以开两个链表,来跟踪每一部分,最后处理完再合并下即可。 随后,怎么感觉这种处理链表的技巧好像在哪见过,很熟...
假如要让你封装jedis以便让外界调用你大概率会像下面方法一样实现。 上面的这段代码违反了DRY原则,两个方法get()和set()大部分代码是相同的(try,catch,f...
求和为奇数的子数组数组,如果直接暴力枚举显示不可取的,数据范围比较大。 涉及到的数组和的问题,通常第一想法就是考虑能不能用前缀和去处理一下。 对应到这题中,正好可以用前缀和处...
这题体现了二分的一种典型应用: “猜答案” 如果没做到类似的题,很难第一时间想到用二分去处理,针对这类问题只有多总结,找到不同题目间共性,把本质提取出来,才能在第一时间条件反...
对于这种简单题,往往都是同类别题的母题最简化版,一些难题不过是对母题加了各种维度的判断,从而提升了难度。 这道题是非常经典的DP问题,不用DP其实也能做, 但是为了加深对DP...
这是一道相当经典的动态规划问题,最初做这道题的时候,还是在大学,当时见到这题一头雾水,看了别人的解析还是不太理解,而且看状态方程时,仅仅是看到了状态的方程的 “形”,不懂每个...
本题虽说是个困难级别的题,但是如果看懂了给的样例,还是非常好实现的。这道题其实能说的点不多,就是完全模拟题目提到了很关键的一点:[尽可能多地往每行中放置单词],为了满足每行多...
给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 解题思路BFS解法,干净利落。起初...
给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。[2,3,1,1,4]...
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。输入:n = 3输出:["((()))","(()())","(())()","...
给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大...
工作中每天都在与工程代码打交道,调用各种API,而忽略了一些最本质和最基础的编码练习,对于一些常用的基础编码练习还是非常有必要的。此外在面试时这点也非常重要,如果不刻意练习些...