![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 66
cuijr_leaf
这个人很勤劳,什么都留下了。
展开
-
PriorityBlockingQueue导致的OOM
PriorityBlockingQueue OOM原创 2022-10-18 16:45:15 · 217 阅读 · 1 评论 -
JAVA--HashMap查询的时间复杂度为什么是O(1)
写在前面HashMap查询的时间复杂度是O(1),这是众所周知的,但是你知道为什么是O(1)吗?正文要研究明白这个问题,我们需要从数组开始研究。数组查询的时间复杂度是O(1),为什么呢?因为在内存中,数组对象被创建时,是被分配了一块连续的内存地址,这块连续的内存地址上,存放着大小相等的引用类型,在默认情况下,如果虚拟机内存没有超过32GB,那么JVM使用的是32位的压缩指针,也就是说,在这块连续的内存地址上存放的是一个个的32位的压缩指针。现在假设我们的数组中存了10个对象,那么我们如果要找原创 2021-01-29 11:49:15 · 6231 阅读 · 4 评论 -
数据结构--树--B+树--与B树的比较
定义:(以下来自百度百科)(1)每个节点至多有m个子女; (2)除根节点外,每个节点至少有floor(m/2)个子女,根节点至少有两个子女; (3)有k个子女的节点必有k个关键字。个人理解:网上对B+树的定义各不相同,如有的说有k个子女的节点必有k-1个关键字,如我研究树结构时常用的网站https://www.cs.usfca.edu/~galles/visualization/BPlusTree.html就是如此,甚至百度百科自己也有自相矛盾的说法,如下:在定义中它说每个.原创 2020-11-28 20:13:07 · 579 阅读 · 0 评论 -
数据结构--树--B树--详解查询插入删除
mysql的索引结构原创 2020-11-25 16:59:56 · 526 阅读 · 0 评论 -
数据结构--树--红黑树--Java实现检验和删除
写在前面今儿个周末,终于有时间把前两天写的关于红黑树删除部分的代码进行测试一下,现在测试完了,暂没有发现问题,所以将代码分享出来,供大家参考学习.注意:这次的检验与删除部分跟之前的查找和插入部分一脉相承,所以重复的部分我就不粘出来了,大家可以两篇文章一起看.水平有限,难免疏漏,欢迎指正.代码部分运行环境jdk1.8intellij idea ultimate 2020.2检查红黑树是否合法 /** * 检查红黑树是否合法 * */原创 2020-11-15 14:15:21 · 226 阅读 · 0 评论 -
数据结构--树--红黑树--Java实现查找和插入
写在前面前两天写完红黑树的分析之后,趁热打铁写了下红黑树的部分实现代码,因删除部分比较复杂,所以这次只涉及查找和插入,删除部分过两天有时间了再写.代码部分实现的功能比较简单,就是查找,插入和输出.我基本上把代码的地方都测过了,但水平有限,难免有疏漏,欢迎指正.运行环境:jdk1.8intellij idea ultimate 2020.2左旋异常:package com.test.Tree;/** * @author: cuijr * @email: * @原创 2020-11-11 20:03:13 · 214 阅读 · 2 评论 -
数据结构--树--红黑树--详解插入和删除的各种情况
写在前面:之前在研究HASHMAP的时候就听说过红黑树的大名,畏于其复杂性没敢深入研究,被某些人好一顿嘲笑,这次决心搞点儿复杂的东西,就直接从红黑树下手了.我研究了两天,发现网上资料不少,但就是让人云里雾里的,总觉着有些问题没有看明白.后来发现是因为大部分up主讲的不够透彻,遇到他们觉得理所当然的地方就略过去了,但就是这理所当然的地方,总是让我想不通!现在我基本想通了,就整一篇,供大家参考.红黑树介绍红黑树的定义:红黑树(Red Black Tree)是一种自平衡二叉查找树. --...原创 2020-11-10 17:40:28 · 667 阅读 · 3 评论