您的位置:首页 > 其它

[算法] 红黑树比一般的平衡2叉树,到底有什么特殊的优势和作用?

2016-05-26 23:44 316 查看
http://bbs.chinaunix.net/thread-3760493-1-1.html

一般的2叉树,加入平衡算法,也能达到动态平衡,那么红黑树到底有什么优势呢? 我看红黑树的增加删除,旋转,似乎也没有什么特别之处啊。

什么样的问题必须用红黑树来解决?

红黑树与AVL的比较:

AVL是严格平衡树,因此在增加或者删除节点的时候,根据不同情况,旋转的次数比红黑树要多;

红黑是用非严格的平衡来换取增删节点时候旋转次数的降低;

所以简单说,如果你的应用中,搜索的次数远远大于插入和删除,那么选择AVL,如果搜索,插入删除次数几乎差不多,应该选择RB。
有时仅为了排序(建立-遍历-删除),不查找或查找次数很少,rb合算一些。
查找多的话用
AVL ,
添加删除多的话用 RB。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: