10 2021 档案

摘要:问题描述 本问题对应 LeetCode 1575. 统计所有可行路径](https://leetcode-cn.com/problems/count-all-possible-routes/)。 具体描述如下:给定一个互不相同的整数数组 locations,其中 locations[i] 表示第 i 阅读全文
posted @ 2021-10-31 16:57 FatalFlower 阅读(201) 评论(0) 推荐(0)
摘要:简介 A lightweight, comprehensive batch framework designed to enable the development of robust batch applications vital for the daily operations of ente 阅读全文
posted @ 2021-10-29 23:09 FatalFlower 阅读(4067) 评论(0) 推荐(1)
摘要:本文源码解析针对的是 MyBatis 3.4.4 MyBatis 执行流程 第一阶段 MyBatis 在这个阶段获得 Mapper 的动态代理对象,具体逻辑如下图所示: 其中,Configuration 类和 MapperRegistry 都是在创建 SqlSession 对象时对相关的 MyBat 阅读全文
posted @ 2021-10-26 07:49 FatalFlower 阅读(168) 评论(0) 推荐(0)
摘要:算法介绍 博耶-摩尔多数投票算法(英语:Boyer–Moore majority vote algorithm),中文常作多数投票算法、摩尔投票算法等,是一种用来寻找一组元素中占多数元素的常数空间级时间复杂度算法。 这一算法应用的问题原型是在集合中寻找可能存在的多数元素,这一元素在输入的序列重复出现 阅读全文
posted @ 2021-10-22 14:39 FatalFlower 阅读(201) 评论(0) 推荐(0)
摘要:MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objec 阅读全文
posted @ 2021-10-22 07:52 FatalFlower 阅读(131) 评论(0) 推荐(0)
摘要:BootStrap Netty 中的 BootStrap 分为两种:一种是客户端的 BootStrap;一种是服务端的 ServerBootStrap。 客户端的 BootStrap 初始化客户端,该 BootStrap 只有一个 EventLoopGroup,用于连接远程主机 服务端的 Serve 阅读全文
posted @ 2021-10-19 21:41 FatalFlower 阅读(98) 评论(0) 推荐(0)
摘要:Reactor 线程模型 由于传统 的阻塞 IO 对于响应时间不是很好,因此引入了 Reactor 的异步事件模型来提高响应时间。 主要存在以下三种方式: 单线程 ​ Reactor 内部通过 selector 来监听连接事件,收到事件之后通过 dispatcher 来进行分发。如果是连接建立的事件 阅读全文
posted @ 2021-10-19 20:27 FatalFlower 阅读(69) 评论(0) 推荐(0)
摘要:问题描述 ​ 给定一个非负整数数组 nums 和一个整数 m,你需要将这个数组分成 m 个非空的连续子数组。设计一个算法使得这 m 个子数组各自和的最大值最小。 ​ 例如,对于输入 nums 为 {7, 2, 5, 10, 8},m 为 2,那么结果应当为 18,因为将 nums 划分为 {7, 2 阅读全文
posted @ 2021-10-19 15:34 FatalFlower 阅读(355) 评论(0) 推荐(0)
摘要:简介 在一般的 Unix 或者 类Unix 中,为了更好地管理磁盘资源,有时不得不挂载一个外部的磁盘,使用 mount 命令可以快速地挂载一个外部磁盘,具体用法为: # 将磁盘分区 sda2 挂载在 /mnt 上 mount /dev/sda2 /mnt # 要查看有哪些磁盘分区是,可以通过 fdi 阅读全文
posted @ 2021-10-18 11:19 FatalFlower 阅读(590) 评论(0) 推荐(0)
摘要:简介 UnionFind 主要用于解决图论中的动态联通性的问题(对于输入的一系列元素集合,判断其中的元素是否是相连通的)。 以下图为例: 集合[1, 2, 3, 4] 和 [5, 6]中的每个元素之间都是相联通的,及 1 和 2、3、4都是连通的,而 1 和 5 则不是连通的。 UnionFind 阅读全文
posted @ 2021-10-12 22:01 FatalFlower 阅读(69) 评论(0) 推荐(0)
摘要:非标准定义:缓存系统中是以缓存行(cache line)为单位存储的,当多线程修改互相独立的变量时,如果这些变量共享同一个缓存行,就会无意中影响彼此的性能,这就被称之为伪共享。 CPU 缓存 在计算机系统中,CPU 高速缓存(CPU Cache)是用于减少处理器访问内存所需的平均时间的部件。在金字塔 阅读全文
posted @ 2021-10-10 22:23 FatalFlower 阅读(229) 评论(0) 推荐(0)
摘要:NIO 简介 ​ 自 JDK 1.4 以来,引入了一个被称为 NIO(New IO) 的 IO 操作,是标准 IO 一个替代品。Java 的 NIO 提供了一种与传统意义上的 IO 不同的编程模型。有时,NIO 也被称为 No-Blocking IO,这是因为一般情况下 NIO 的 API 都是非阻 阅读全文
posted @ 2021-10-10 21:00 FatalFlower 阅读(86) 评论(0) 推荐(0)
摘要:什么是垃圾对象 在内存中再也不可能会被使用到的对象 判断一个对象是否是垃圾对象的方法(标记): 可达性分析:从根节点开始,如果能够被访问到,则说明这个对象是可用的,否则,就说明这个对象不可达的,即是一个垃圾对象 引用器计数:判断当前的对象是否有其他的引用引用它,如果存在,则说明这个对象不是一个垃圾对 阅读全文
posted @ 2021-10-02 17:40 FatalFlower 阅读(75) 评论(0) 推荐(0)
摘要:运行时数据区 JVM 在程序执行时定义了多个运行时数据区,有些数据区是由 JVM 在启动时创建并且在 JVM 退出后摧毁的,有些数据区是由每个线程所有的。每个线程私有的数据区在由线程创建时创建,随着线程的退出而销毁。 主要存在以下几个运行时数据区:由线程共享的运行时数据区:堆区、方法区;线程私有的运 阅读全文
posted @ 2021-10-01 14:51 FatalFlower 阅读(53) 评论(0) 推荐(0)