平衡二叉树
AVL树是带有平衡条件的二叉查找树,命名的由来是1962年 Adelson-Velskii和Landis 提出一篇论文,名字从名字中摘取而来
代码实现:
LL类型
原来结点情况
*gf->lchild/rchild = f;
*f -> A//(根结点)
*p->B//(根结点的左孩子)
其中 f是爹,p为左孩子,gf是f他爹
现在旋转
f->lchild = p->rchild;//A的左孩子是原先B的右孩子
p->rchild = f;//B的右孩子是A
gf->lchild/rchild = p;
RR,LR,RL类似,就是改变下某个结点左右指针的指向,比较简单