May you do good and not evil.May you find forgiveness for yourself and forgive others.M...
May you do good and not evil.May you find forgiveness for yourself and forgive others.M...
@3460353a4b73 看第一条热门评论,当树自底向上平衡时,就有可能出现
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
情景2.1.2.3,可以看下习题2的解答
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
@时光丶蹉跎 java的HashMap是链表+红黑色实现的,可以看看哈,非常有意思
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
谢谢~,确实要完全理解是需要自己多思考和实践的。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
笔误,已更正,谢谢指正~
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
之前在网络通信和通用数据交换等应用场景中经常使用的技术是 JSON 或 XML,而在最近的开发中接触到了 Google 的 ProtoBuf。 在查阅相关资料学习 Prot...
新插入的结点还需要跟它的父结点绑定关系,所以返回父结点,如果比父结点大,那么插到父结点的右子结点;如果比父结点小,那么插到父结点的左子结点。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
原文:Fearless Concurrency with Rust by Aaron Turon Apr 10, 2015 (译者注:这是一篇很好地讲解并发编程的文章,涉及...
可以,欢迎转载哈。转载私聊我哈,评论太多会忽略的。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
叶子结点是黑色的喔,你确定没违反?
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
你仔细看看5个性质,“替换节点是黑色节点但是没有兄弟节点” 这个有可能么?
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
@安卓大叔 不是说每个结点到叶子结点都是相同哈,越往上,黑色结点肯定越多,是每个结点到它的叶子结点的黑色结点数肯定相同。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
哦~我感觉这句话要改改表达 “任意一结点到每个叶子结点的路径都包含数量相同的黑结点” -> "任意一结点到【它的】每个叶子结点的路径都包含数量相同的黑结点"。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
“将删除结点的值直接变为替换结点的值” 其实就是这样,你理解得没错,我文中的意思是改变替代结点的颜色为删除结点的颜色,也就是你表达的意思。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
“树在删除元素之前不应该是平衡的吗。而且树再删除元素之后会导致不平衡,才会有去平衡的操作” 这句话没错哈。
你引用的话的意思是:在达到平衡前,替代结点会参与树的平衡工作,到树平衡后,再把替代结点替换到删除结点的位置,从而达到删除的效果。
30张图带你彻底理解红黑树写在前面 当在10亿数据进行不到30次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想...
楼主很用心,理解原理没问题,不过编程的话,太复杂了,编程上看红黑树非常简单,我没管什么旋转,用三个函数实现功能.
1.子代父,交换颜色,丢两个节点进去,函数自然知道如何变更,如子为红,黑高不变,红子在满足不红红相连的情况下,任意移动,不影响黑高,如果子为黑,则多一个黑,子后继少一黑,如子有后继红,代替即可删除本路黑子
2.红平衡 两红处理,有两种情况,在祖及父之间,先替父,再替祖,否则父替祖,此时丢三个节点,函数自可判断是哪种情况,也不用管什么旋转
3.黑平衡 黑兄替父时,如果兄有红子,变黑后本通道多一黑,可直接删除
这是我写的,你可以参考一下,最终插入删除测试打印加注释也就200行左右
https://github.com/ZhangGuibin133/RedBlackTree