posted @ 2013-07-29 20:10 冰天雪域 阅读(224) 评论(0) 推荐(0) 编辑
摘要:
AVL-tree、RB-tree、AA-tree均可以实现平衡的二叉查找树,虽然相对于一般的二叉搜索树其插入、删除节点的平均时间会比较长,但它们可以避免极验证应付的最坏的情况--树高度不平衡。平衡二叉查找树所谓的平衡并不是绝对的平衡,而是要求任何一个节点的左右子树高度相差不会超过1,此时仍能够保证树的“对数深度”。在学习红黑树之前要先学习AVL树,了解一些旋转操作是怎么进行的。如上图所示,X节点本来是平衡的,插入一个新节点后“平衡被破坏”了,这可以分为4种情况:插入节点位于X的左子节点的左子树--左左;插入节点位于X的左子节点的右子树--左右;插入节点位于X的右子节点的左子树--右左;插入节点 阅读全文