二叉树的左旋和右旋简单图示

旋转是二叉树的基本操作,我们可以对任意一个存在父亲节点的子节点进行旋转,包括如下几种形式(设被旋转节点为x,其父亲节点为p):
1.左旋
旋转前,x是p的右儿子。
x的左儿子(若存在)变为p的右儿子,p变为x的左儿子。如下图

2.右旋
旋转前,x是p的左儿子。
x的右儿子(若存在)变为p的左儿子,p变为x的右儿子。如下图

综上总结:

是左旋还是右旋的判断,我们可以通过检查选择前x是p的左儿子还是右儿子来判断该次旋转是左旋还是右旋。
旋转的方式,也就是把父节点旋转到旋转点的子节点,然后把旋转点多余的子节点给父节点

posted on 2019-05-31 11:06  梁凤财Zero  阅读(2322)  评论(0编辑  收藏

导航