一. AVL樹概念
一棵AVL樹具有以下性質:
1.它的左右子樹都是AVL樹。
2.左子樹和右子樹高度之差(簡稱平衡因子)的絕對值不超過(-1,0,1)。
二.平衡化旋轉
1.左單旋
(右右->左):在較高右子樹的右側插入新節點,則用左單旋
- 情況一:(如下圖)
- 情況二:
- 情況三:
情況四:
2.右單旋
(左左->右):在較高左子樹的左側插入新節點,用右單旋
3.先左後右雙旋
(左右):在較高左子樹的右側
4.先右後左雙旋
(右左):在較高右子樹的左側