02 2021 档案
摘要:在之前的项目中使用了Sentinel来进行限流和熔断降级。 基本概念 Sentinel 的核心骨架,是将不同的 Slot 按照顺序串在一起(责任链模式),从而将不同的功能(限流、降级、系统保护)组合在一起。slot chain 其实可以分为两部分:统计数据构建部分(statistic)和判断部分(r
阅读全文
摘要:任意一个Java对象,都拥有一组监视器方法(定义在java.lang.Object上),主要包括wait()、wait(long timeout)、notify()以及notifyAll()方法,这些方法与synchronized同步关键字配合,可以实现等待/通知模式。Condition接口也提供了
阅读全文
摘要:在之前的项目中用到了Nacos作为微服务的注册中心与配置中心,配置中心可以动态更新配置,使得我们在改动配置后无需重启服务即可直接生效。我们也可以在nacos的后台直接修改配置文件,这极大地增强了系统的运维能力。 下面就来探究一下Nacos服务配置实时更新的底层原理。 官方demo 首先来参考一下官方
阅读全文
摘要:快慢指针找链表的环,老生常谈了。寻找重复数也可以用这个思想。把下标看作指针,取值看作移动指针。记录一下 287. 寻找重复数 给定一个包含 n + 1 个整数的数组 nums ,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。 假设 nums 只有 一个重复的整数 ,找
阅读全文
摘要:437. 路径总和 III 给定一个二叉树,它的每个结点都存放着一个整数值。 找出路径和等于给定数值的路径总数。 路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。 二叉树不超过1000个节点,且节点数值范围是 [-1000000,1000000] 的
阅读全文
摘要:480. 滑动窗口中位数 中位数是有序序列最中间的那个数。如果序列的大小是偶数,则没有最中间的数;此时中位数是最中间的两个数的平均数。 例如: [2,3,4],中位数是 3[2,3],中位数是 (2 + 3) / 2 = 2.5给你一个数组 nums,有一个大小为 k 的窗口从最左端滑动到最右端。窗
阅读全文
摘要:208. 实现 Trie (前缀树) 还有其他的数据结构,如平衡树和哈希表,使我们能够在字符串数据集中搜索单词。为什么我们还需要 Trie 树呢?尽管哈希表可以在 O(1)O(1) 时间内寻找键值,却无法高效的完成以下操作: 找到具有同一前缀的全部键值。按词典序枚举字符串的数据集。Trie 树优于哈
阅读全文
摘要:424. 替换后的最长重复字符 给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次。在执行上述操作后,找到包含重复字母的最长子串的长度。 注意:字符串长度 和 k 不会超过 104。 示例 1: 输入:s = "ABAB", k = 2输出:4解释
阅读全文

浙公网安备 33010602011771号