红黑树一种重要的平衡二叉搜索树实现方法
红黑树 一种重要的平衡二叉搜索树实现方法
平衡二又搜索树我们有没有简单的方法得到一棵相对“平衡的”二又搜索树?挪些因素可能会导致二又搜索树的不平衡?
平衡二叉搜索树 哪些因素可能会导致二叉搜索树的不平衡? 我们有没有简单的方法得到一棵相对“平衡的”二叉搜索树?
平衡二又树的本质含义:·当以节点n为根时,若定义Lson(n)为n的左子树,定义Rson(n)为r的右子树,当该树满足以下条件时,称该树为平衡二又树:[H(Lson(n))-H(Rson(n)<=1,其中H(m)指以m为根的树的高度,m=nil时H(m)=0·因此,维护平衡性只要做到·判断哪个子树“超”高了·记录高度·通过旋转降低高度
平衡二叉树的本质含义: • 当以节点n为根时,若定义Lson(n)为n的左子树,定义Rson(n)为n 的右子树,当该树满足以下条件时,称该树为平衡二叉树: |H(Lson(n))-H(Rson(n))|<=1,其中H(m)指以m为根的树的高度,m=nil 时H(m)=0 • 因此,维护平衡性只要做到: • 判断哪个子树“超”高了 • 记录高度 • 通过旋转降低高度
左/右旋转的同时保持二又搜索性质LEFT-ROTATE(T,X)..XXayRIGHT-ROTATE(T,y)ββaY以左转为例,新树平衡了吗?
左/右旋转的同时保持二叉搜索性质 以左转为例,新树平衡了吗?
新树平衡了
新树平衡了