红黑树详解
2023-02-18 16:29:04 时间
1、每个节点或者是红色或者黑色。
2、根节点是黑色。
3、红色节点的两个子节点都是黑色。(从每个叶子到根的路径不会出现两个连续的红色)
4、对于每个节点,从该节点到其叶子节点构成的所有路径上黑节点个数相同。
5、所有的叶子节点都是null节点,并且是黑色。
这里先介绍一下O(1),O(n),O(logn),O(nlogn),O(n^2)。
O(1)常数阶:最低的时空复杂度,也就是耗费的时间或者空间与输入的数据大小无关。哈希算法就是典型的O(1)复杂度。
O(logn)对数阶:当数据增大n倍的时候,耗时则值增大了8倍,比线性的耗能更低,二分查找法就是利用这个原理。
O(n)线性阶:代表数据量增大几倍,也就耗时增大几倍。
O(nlogn)对数阶乘以n,这个需要乘以n,所以比线性阶的耗时大。
O(n^2)平方阶:代表着数据增大n倍时,也就消耗n的平方倍。
平方阶上面还有立方阶,指数阶,同理耗时越来越长。
排序二叉树:排序二叉树是有序的,特殊结构的二叉树,可以对所有节点进行检索,但是缺点是当插入的数据正好都是有序的时候,他会退化成链表。这时候时间复杂度就会增加。
平衡树二叉树(AVL)是什么呢,最重要的特性就是最坏的情况下能保证O(logN)的时间复杂度查找,不具备的话可能退化成单链表,时间复杂度会到O(N)。
1、每个节点最多只有两个子节点。(二叉)
2、有序:每个节点的值比他左边树所有节点都大。(必须是排序的)
3、每个节点左边树的高度与右边高度不会超过1。
为什么会出现红黑树呢,为了防止在极端情况下,二叉树退化成链表导致检索效率大大降低的问题。他肯定是排序二叉树,然后在其基础上,加上了red和black,通过变色和左旋右旋来保持他的特征。
相关文章
- Adobe Acrobat Pro DC 2019(PDF) 软件下载安装包教程(附下载方法)
- Adobe Acrobat Pro DC 2018(PDF) 软件下载安装包教程(附下载方法)
- 仅需1% Embedding参数,硬件成本降低十倍,开源方案单GPU训练超大推荐模型
- 文件更小,质量更高,大火的Stable Diffusion还能压缩图像?
- 11分钟充电70%,华人教授在锂电池中加镍箔登上Nature
- 戴着VR头盔教机器人抓握,机器人当场就学会了
- 还未入职,这位将来的博导为学生规划了一条高效学习之路
- 英特尔i9-13900K重夺PC性能桂冠:与AMD 7950X拉开8%差距
- 价值1亿美金时,Stable Diffusion背后的团队开始互撕,谁才是真官方?
- NeurIPS 2022 | 用变分编码器生成周期图,时间、空间复杂度最低
- Bengio、LeCun 等人联名上书,呼吁美国投资神经AI,攻破「具身图灵测试」
- 30亿跑赢GPT-3的1750亿,谷歌新模型引热议,然而却把Hinton年龄搞错了
- Stable Diffusion新玩法,一句话帮你换图,网友魔改《戴珍珠耳环的少女》长这样
- LeCun转推,PyTorch GPU内存分配有了火焰图可视化工具
- ECCV 2022 | 摆脱部件标签依赖,上科大&ZMO.AI提出分部件3D人体重建与驱动新方法UNIF
- 清华作者排名第一,多人中稿超十篇:NeurIPS 2022统计数据出炉
- Transformer作者离职创业的公司,想从老东家谷歌再拿2亿美元融资
- 谷歌并未放弃TensorFlow,将于2023年发布新版,明确四大支柱
- 打破不可能三角、比肩5400亿模型,IDEA封神榜团队仅2亿级模型达到零样本学习SOTA
- 有备无患!DBS高性价比方案助力富途证券备份上云