Java 一文搞懂JVM之 方法区、永久代、元空间三者的区别 方法区实在虚拟机规范里面被定义的,不同的虚拟机对这个定义的实现不同,在HotSpot虚拟机中在jdk1.7版本之前的方法区实现叫永久代(PermGenspace),jdk1.8之后叫做元空间(Metaspace)。 2022-08-31 浏览(260) 评论(2) 阅读全文
Java JVM 性能调优(结合可视化工具) 1. Heap内存(老年代)持续上涨达到设置的最大内存值;2. Full GC 次数频繁;3.GC 停顿时间过长(超过1秒);4.应用出现OutOfMemory 等内存异常;内存溢出:申请内存时,没有足够的内存使用、内存泄露:无法释放已经申请的内存空间,一次性内存危害库忽略,但堆积,无论多少内存迟早被吃光 2022-07-22 浏览(248) 评论(0) 阅读全文
数据结构 红黑树(基于2-3树等价) (1).每一个节点或者是黑色,或者是红色 (2).根节点是黑色 (3).每一个叶子节点是黑色 (4).若是一个节点是红色的,则它的子节点必须是黑色的 (5).从任意一个节点到叶子节点,通过的黑色节点是同样多的 2022-06-28 浏览(216) 评论(0) 阅读全文
Java 深入浅出ConcurrentHashMap详解 避免 HashMap 的线程安全问题,有多个解决方法,比如改用 HashTable 或者 Collections.synchronizedMap() 方法。 ConcurrentHashMap的优势在于兼顾性能和线程安全,一个线程进行写操作时,它会锁住一小部分,其他部分的读写不受影响,其他线程访问没上锁的地方不会被阻塞。 2022-06-28 浏览(300) 评论(0) 阅读全文
数据结构 2-3查找树 2-结点,含有一个键(及其对应的值)和两条链接,左链接指向的2-3树中的键都小于该结点,右链接指向的2-3树中的键都大于该结点。3-结点,含有两个键(及其对应的值)和三条链接,左链接指向的2-3树中的键都小于该结点,中链接指向的2-3树中的键都位于该结点的两个键之间,右链接指向的2-3树中的键都大于该结点。... 2022-06-24 浏览(155) 评论(0) 阅读全文
数据结构 AVL平衡二叉搜索树 AVL树定义如下:是平衡二叉树或者是一棵空树,或者是具有以下性质的二叉排序树:1.每个节点的平衡因子只可能是1、0、-1(绝对值≤1,如果超过1,称之为“失衡”)2.每个节点的左右子树高度差不超过13.因为每个结点的高度差不超过1,AVL树搜索、添加、删除的时间复杂度是O(logn)...... 2022-06-24 浏览(223) 评论(0) 阅读全文
数据结构 字典树(Tire) 字典树,又称单词查找树,Tire树,是一种树形结构,是一种的哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串) 2022-06-17 浏览(228) 评论(0) 阅读全文
数据结构 最大索引堆(IndexMaxHeap) 索引堆是对堆这种数据结构的优化,是利用真正元素的索引值来组成一个堆,可以映射出一个最大堆或者最小堆,索引堆可分为最大索引堆(IndexMaxHeap)和最小索引堆(IndexMinHeap)。 2022-06-11 浏览(151) 评论(0) 阅读全文
数据结构 线段树(SegmentTree) 线段树(segmenttree)顾名思义,是用来存放给定区间(segmentorinterval)内对应信息的一种数据结构。 2022-06-11 浏览(283) 评论(0) 阅读全文
Java 一文读懂Jvm垃圾回收机制 垃圾回收(Garbage Collection,GC),顾名思义就是释放垃圾占用的空间,防止内存泄露。有效的使用可以使用的内存,对内存堆中已经死亡的或者长时间没有使用的对象进行清除和回收。 2022-03-21 浏览(265) 评论(0) 阅读全文