摘要:
1、题目 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成 阅读全文
摘要:
1、题目 爱丽丝和鲍勃一起玩游戏,他们轮流行动。爱丽丝先手开局。 最初,黑板上有一个数字 N 。在每个玩家的回合,玩家需要执行以下操作: 选出任一 x,满足 0 < x < N 且 N % x == 0 。用 N - x 替换黑板上的数字 N 。如果玩家无法执行这些操作,就会输掉游戏。 只有在爱丽丝 阅读全文
摘要:
1、题目 给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例: 输入:[ [1,3,1], [1,5,1], [4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。 2、解题 经典 阅读全文
摘要:
1、现象 增强for循环中进行remove、add会报ConcurrentModificationException 2、原理 增强for循环其实是交给iterator来完成增删改查的 看下iterator的代码,如下 /** * An optimized version of AbstractLi 阅读全文
摘要:
1、题目 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。 示例 1:输入:[3,4,5,1,2] 输出:1 示例 2:输入:[ 阅读全文
摘要:
1、运行时数据区域 1.1、程序计数器 一块较小的内存,它可以看作是当前线程所执行的字节码的行号指示器。 线程独有 唯一一个没有规定OutOfMemoryError情况的区域 1.2、Java虚拟机栈 线程私有,生命周期与线程相同 每个方法被执行的时候都会创建一个栈帧,方法的开始到结束对应了栈帧的入 阅读全文
摘要:
1、自动装配过程 启动类注解一览 @SpringBootApplication @EnableDiscoveryClient @MapperScan("com.tpl.system.dao") public class SystemApplication { public static void m 阅读全文
摘要:
1、概述 Mybatis允许使用插件拦截的方法调用包括: Excetor ParameterHandler ResultHandler StatementHandler 上图是Mybatis框架的整体执行架构,Mybatis插件能够对四大对象接口进行拦截。 Executor : Mybatis执行器 阅读全文
摘要:
1、概念 红黑树是一种自平衡的二叉查找树,它在二叉查找树的基础上又具备如下特征: 节点是红色或黑色 根节点是黑色 每个叶子节点都是黑色的空节点(NIL节点) 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点) 从任一节点到其每个叶子节点的所有路径都包含相同数目的 阅读全文
摘要:
1、概念 类加载阶段,通过一个类的全限定名来获取描述该类的二进制流文件,实现这个动作的代码就是类加载器。 2、类与类加载器 对于任意一个类,都必须由加载它的类加载器和这个类本身一起共同确立其在Java虚拟机中的唯一性。每个类加载器都有独立的类名称空间。通俗的说如果要比较两个类是否相同,必须在同一类加 阅读全文