平衡二叉樹(balancedbinary tree)是由阿德爾森-維爾斯和蘭迪斯(adelson-velskiiand landis)于1962年首先提出的,是以又稱為avl樹。
定義:平衡二叉樹或為空樹,或為如下性質的二叉排序樹:
(1)左右子樹深度之差的絕對值不超過1;
(2)左右子樹仍然為平衡二叉樹.
平衡二叉樹可以避免排序二叉樹深度上的極度惡化,使樹的高度維持在o(logn)來提高檢索效率。
因為插入節點導緻整個二叉樹失去平衡分成如下的四種情況:

假設由于在二叉排序樹上插入節點而失去平衡的最小子數根節點的指針為a(即a是離插入節點最近,且平衡因子絕對值超過1的祖先節點),則失去平衡後進行調整的規律如下:
1.如上圖ll單向右旋處理:由于在*a的左子樹根節點的左子樹上插入節點,*a的平衡因子由1增至2,緻使以*a為根節點的子樹失去平衡,則需要進行一次向右的順時針旋轉操作。
2.如上圖rr單向左旋處理:由于在*a的右子樹根節點的右子樹上插入節點, *a的平衡因子有-1變為-2,緻使以*a為根節點的子樹失去平衡,則學要進行一次向左的逆時針旋轉操作。
3.如上圖lr雙向旋轉(先左後右)處理:由于在*a的左子樹根節點的右子樹插入節點,*a的平衡因子有1增至2,緻使以*a為根節點的子樹失去平衡,則需要進行兩次旋轉(先左旋後右旋)操作。
4.如上圖rl雙向旋轉(先右後左)處理:由于在*a的右子樹根節點的左子樹上插入節點,*a的平衡因子由-1變為-2,緻使以*a為根節點的子樹失去平衡,則需要進行兩次旋轉(先左旋後右旋)操作。