Java-线程池 Posted on 2020-03-28 | In Java Words count in article: 3.1k | Reading time ≈ 13 Java中的线程池线程池是一个管理线程的池子,它的作用有以下几点: 管理线程,避免增加创建线程和销毁线程的资源损耗 提高响应速度 重复利用 创建线程池常见的创建线程池的方式有以下几种: Executors.newCachedThreadPool() 核心线程数为0 最大线程数为Integer.M ... Read more »
Java内存区域详解 Posted on 2020-03-28 | In JVM Words count in article: 3k | Reading time ≈ 10 Java内存区域根据《Java虚拟机规范》规定,Java虚拟机,即JVM所管理的内容将会包括以下几个运行时数据区域。 主要划分为五大块:程序计数器、虚拟机栈、本地方法栈、方法区和堆。 其中,程序计数器、虚拟机栈和本地方法栈是线程私有的,方法区和堆是共享数据。如下图: 接下来我们挨个看看这五块数据 ... Read more »
如何判断对象是否可以回收 Posted on 2020-03-28 | In JVM Words count in article: 1.6k | Reading time ≈ 5 如何判断Java对象是否可以回收Java中垃圾回收是负责税收已经消亡或者是不再使用的对象,那么如何判断对象是否可以回收呢? 主流的方法有两种:引用计数和可达性分析 引用计数引用计数的算法流程是这样的:在对象中添加一个引用计数器,一旦有一个新的引用指向这个对象,它的计数器值就加一;当引用失效或者指向别 ... Read more »
Java内存区域详解 Posted on 2020-03-28 | In JVM Words count in article: 1.8k | Reading time ≈ 6 Java内存区域根据《Java虚拟机规范》规定,Java虚拟机,即JVM所管理的内容将会包括以下几个运行时数据区域。 主要划分为五大块:程序计数器、虚拟机栈、本地方法栈、方法区和堆。 其中,程序计数器、虚拟机栈和本地方法栈是线程私有的,方法区和堆是共享数据。如下图: 接下来我们挨个看看这五块数据 ... Read more »
142.环形链表 II Posted on 2020-03-28 | In leetcode Words count in article: 478 | Reading time ≈ 1 题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 说明:不允许修改给定的链表。 示例1123输入:head = [3,2 ... Read more »
160.相交链表 Posted on 2020-03-28 | In leetcode Words count in article: 920 | Reading time ≈ 3 题目编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交. 示例1123输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Referen ... Read more »
38. 外观数列 Posted on 2020-03-27 | In leetcode Words count in article: 581 | Reading time ≈ 2 题目「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下: 123451. 12. 113. 214. 12115. 111221 1 被读作 “one 1” (“一个一”) , 即 11。11 被读作 “two 1 ... Read more »
54. 螺旋矩阵 Posted on 2020-03-27 | In leetcode Words count in article: 395 | Reading time ≈ 1 题目给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例1:1234567输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5] 示例2:1234567输入:[ ... Read more »
98. 验证二叉搜索树 Posted on 2020-03-27 | In leetcode Words count in article: 427 | Reading time ≈ 1 题目给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 示例1:给定二叉树 [3,9,20,null,null,15,7], 12345输入: ... Read more »
151. 翻转字符串里的单词 Posted on 2020-03-27 | In leetcode Words count in article: 707 | Reading time ≈ 3 题目给定一个字符串,逐个翻转字符串中的每个单词。 示例1:12输入: "the sky is blue"输出: "blue is sky the" 示例2:123输入: " hello world! "输出: "world! ... Read more »