240 发简信
IP属地:浙江
  • 120
    分享助力

    分享助力的结构则是经典的流程化设计,目前的分享助力组件结构如图: 分享裂变作为常用常新的互动抓手,每年其实都会反复重新造轮子,毕竟需求总能围绕着分享搞出新花样,每次业务上一推...

  • 120
    【限流算法】滑动时间窗口,最核心逻辑

    核心原理 滑动时间窗口的核心原理是: 我们先确认一个窗口,这个创建就是一个单位时间,比如10s, 统计10s内某个Redis的Key访问次数,这个10s就是一个单位时间窗口,...

  • 120
    【一举两得】Leetcode86分隔链表 + hashmap8扩容细节分析

    一句话概括就是:将链表以x为标定点分隔成两部分既然是 2 部分,就可以开两个链表,来跟踪每一部分,最后处理完再合并下即可。 随后,怎么感觉这种处理链表的技巧好像在哪见过,很熟...

  • RedisTemplate大量使用的callback机制

    假如要让你封装jedis以便让外界调用你大概率会像下面方法一样实现。 上面的这段代码违反了DRY原则,两个方法get()和set()大部分代码是相同的(try,catch,f...

  • 120
    【前缀和+组合】1524.和为奇数的子数组数目

    求和为奇数的子数组数组,如果直接暴力枚举显示不可取的,数据范围比较大。 涉及到的数组和的问题,通常第一想法就是考虑能不能用前缀和去处理一下。 对应到这题中,正好可以用前缀和处...

  • 120
    【二分值域】Leetcode1760. 袋子里最少数目的球

    这题体现了二分的一种典型应用: “猜答案” 如果没做到类似的题,很难第一时间想到用二分去处理,针对这类问题只有多总结,找到不同题目间共性,把本质提取出来,才能在第一时间条件反...

  • 120
    Leetcode-121. 买卖股票,小题大做,加深DP理解

    对于这种简单题,往往都是同类别题的母题最简化版,一些难题不过是对母题加了各种维度的判断,从而提升了难度。 这道题是非常经典的DP问题,不用DP其实也能做, 但是为了加深对DP...

  • 120
    Leetcode72-编辑距离,DP经典回味,深入分析

    这是一道相当经典的动态规划问题,最初做这道题的时候,还是在大学,当时见到这题一头雾水,看了别人的解析还是不太理解,而且看状态方程时,仅仅是看到了状态的方程的 “形”,不懂每个...

  • 120
    Leetcode-68. 文本左右对齐,模拟好题,训练硬编码能力

    本题虽说是个困难级别的题,但是如果看懂了给的样例,还是非常好实现的。这道题其实能说的点不多,就是完全模拟题目提到了很关键的一点:[尽可能多地往每行中放置单词],为了满足每行多...

  • Leetcode-279. 完全平方数,BFS建模深度分析

    给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 解题思路BFS解法,干净利落。起初...

  • 120
    Leetcode-45. 跳跃游戏 II,模拟+贪心好题

    给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。[2,3,1,1,4]...

  • Leetcode-括号匹配,深度分析与思考

    数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。输入:n = 3输出:["((()))","(()())","(())()","...

  • Leetcode-239. 滑动窗口,“滑”的动作如何用代码体现?

    给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大...

  • 编程练习-十进制转任意进制

    工作中每天都在与工程代码打交道,调用各种API,而忽略了一些最本质和最基础的编码练习,对于一些常用的基础编码练习还是非常有必要的。此外在面试时这点也非常重要,如果不刻意练习些...