摘要: 目录简介最短路总结 简介 最短路 在一个图中有 n 个点、m 条边。边有权值,权值可正可负。边可能是有向的,也可能是无向的。给定两个点,起点是 s,终点是 t,在所有能连接 s 和 t 的路径中寻找边的权值之“和” 最小的路径,这就是最短路径问题。 最短路有两种: 单源最短路:从单个节点出发,到所有 阅读全文
posted @ 2024-03-22 11:22 LARRY1024 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 目录Redis 集群CRC16 的算法原理CRC16 算法最大值心跳master 节点间心跳通讯 Redis 集群 Redis Cluster 采用数据分片机制,定义了 16384 个 Slot 槽位,集群中的每个 Redis 实例负责维护一部分槽以及槽所映射的键值数据。 客户端可以连接集群中任意一 阅读全文
posted @ 2024-02-05 11:48 LARRY1024 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 目录SqlSession是什么SqlSession分类SqlSession的创建为什么和 Spring 整合后的 SqlSession 一级缓存偶尔会失效一级缓存和二级缓存总结 SqlSession是什么 SqlSession是Mybatis 中定义的,用来表示与关系数据库的一次会话,会话定义了各种 阅读全文
posted @ 2024-02-05 11:33 LARRY1024 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 目录题目应用 1:最长公共子串题目解题思路边界条件状态转移代码实现应用 2:Leetcode 718. 最长重复子数组题目解题思路代码实现解题思路方法一:动态规划初始条件状态转移复杂度方法二:滑动窗口复杂度代码实现 题目 应用 1:最长公共子串 题目 给定两个字符串 text1 和 text2,返回 阅读全文
posted @ 2024-02-05 10:56 LARRY1024 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 643. 子数组最大平均数 I2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现2.2. Leetcode 3. 无重复字符的最长子串2.2.1. 题目2.2.2. 解题思路2.2.3. 代码实现2.3. Leetcode 159. 阅读全文
posted @ 2024-01-29 17:13 LARRY1024 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 295. 数据流的中位数2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现 1. 题目列表 题目列表: 序号 题目 难度 1 295. 数据流的中位数 困难 2. 应用 2.1. Leetcode 295. 数据流的中位数 2.1. 阅读全文
posted @ 2024-01-29 15:44 LARRY1024 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 315. 计算右侧小于当前元素的个数2.1.1. 题目2.1.2. 解题思路2.1.3. 算法步骤2.1.4. 代码实现 1. 题目列表 题目列表: 序号 题目 难度 1 315. 计算右侧小于当前元素的个数 困难 2. 应用 2.1. Lee 阅读全文
posted @ 2024-01-27 17:20 LARRY1024 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 226. 翻转二叉树2.1.1. 题目2.1.2. 解题思路2.1.2.1. 方法一:前序遍历2.1.2.2. 方法二:后序遍历2.1.3. 代码实现2.2. Leetcode 116. 填充每个节点的下一个右侧节点指针2.2.1. 题目2.2 阅读全文
posted @ 2024-01-27 15:00 LARRY1024 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目2. 应用2.1. Leetcode 124. 二叉树中的最大路径和2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现2.2. Leetcode 100. 相同的树2.2.1. 题目2.2.2. 解题思路2.2.3. 代码实现2.3. Leetcode 105. 从前序与中 阅读全文
posted @ 2024-01-25 19:41 LARRY1024 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 目录题目方案一:synchronized方法二:ReentrantLock方法三:ReentrantLock + Condition(非公平锁)方法四:ReentrantLock + Condition(公平锁)方法五:Semaphore 题目 使用三个线程 T1、T2、T3,如何让他们按顺序交替打 阅读全文
posted @ 2024-01-24 23:03 LARRY1024 阅读(799) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 64. 最小路径和2.1.1. 题目2.1.2. 分析2.1.2.1. 边界条件2.1.2.2. 状态转移2.1.3. 代码实现2.2. Leetcode 174. 地下城游戏2.2.1. 题目2.2.2. 分析2.2.2.1. 初始条件2.2 阅读全文
posted @ 2024-01-24 16:13 LARRY1024 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 目录1. 简介2. 应用2.1. Leetcode 752. 打开转盘锁2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现2.2. Leetcode 127. 单词接龙2.2.1. 题目2.2.2. 解题思路2.2.3. 代码实现 1. 简介 BFS 的核心思想应该不难理解的,就是把一些 阅读全文
posted @ 2024-01-22 21:32 LARRY1024 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目2. 应用2.1. Leetcode 10. 正则表达式匹配题目解题思路代码实现 1. 题目 题目列表: 序号 题目 难度 1 10. 正则表达式匹配 困难 2. 应用 2.1. Leetcode 10. 正则表达式匹配 题目 10. 正则表达式匹配 解题思路 设 \(dp[i][j] 阅读全文
posted @ 2024-01-22 15:49 LARRY1024 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 目录1. 题目列表2. 应用2.1. Leetcode 410. 分割数组的最大值2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现2.2. Leetcode 658. 找到 K 个最接近的元素2.2.1. 题目2.2.2. 解题思路2.2.3. 复杂度2.2.4. 代码实现2.3. L 阅读全文
posted @ 2024-01-21 20:53 LARRY1024 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 目录1. 前言1.1. 什么是循环依赖?1.2. Spring 创建 Bean 主要流程1.2.1. 实例化 Bean1.2.2. 填充 Bean 属性1.2.3. 调用 Bean 初始化方法1.3. BeanPostProcessor 接口拓展点2. Spring 解决循环依赖的流程分析2.1. 阅读全文
posted @ 2024-01-18 11:12 LARRY1024 阅读(5071) 评论(0) 推荐(4) 编辑
摘要: 目录1. IoC 容器1.1. IoC 的容器接口设计图1.1.1. BeanFactory1.1.2. ApplicationContext1.2. BeanFactory 容器设计原理1.2.1. 编程式使用IOC容器1.3. ApplicationContext1.3.1. 设计原理2. Io 阅读全文
posted @ 2024-01-16 18:12 LARRY1024 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 目录单例模式简介双重检查锁优缺点延迟加载模式(Initialization-on-demand holder idiom)优缺点饿汉模式优缺点枚举方式优缺点 单例模式简介 单例模式是一种创建型设计模式, 让你能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。 单例模式保证了系统内存中该类 阅读全文
posted @ 2024-01-16 10:53 LARRY1024 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 目录括号相关的应用1. Leetcode 20. 有效的括号1.1. 题目1.2. 解题思路1.3. 代码实现2. Leetcode 1541. 平衡括号字符串的最少插入次数2.1. 题目2.2. 解题思路2.3. 代码实现3. Leetcode 921. 使括号有效的最少添加3.1. 题目3.2. 阅读全文
posted @ 2024-01-12 20:18 LARRY1024 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 目录Java 对象内存结构Java 对象在内存中的布局Java 对象头MonitorJava 中的锁状态无锁状态偏向锁轻量级锁(自旋锁)重量级锁锁的优缺点对比锁升级场景场景1: 经常只有某一个线程来加锁。场景2: 有线程来参与锁的竞争,但是获取锁的冲突时间很短场景3: 有大量的线程参与锁的竞争,冲突 阅读全文
posted @ 2024-01-07 23:14 LARRY1024 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 目录同步器Semaphore原理示例Exchanger总结CountDownLatchCyclicBarrier原理应用场景示例Phaser示例 同步器 JUC 包下的工具类除了 locks,还包含其他的工具类,如:Semaphore、CountDownLatch、CyclicBarrier、Exc 阅读全文
posted @ 2024-01-06 23:24 LARRY1024 阅读(53) 评论(0) 推荐(0) 编辑