1. 若是插入一個node引發了樹的不平衡,AVL和RB-Tree都是最多隻須要2次旋轉操做,即二者都是O(1);可是在刪除node引發樹的不平衡時,最壞狀況下,AVL須要維護從被刪node到root這條路徑上全部node的平衡性,所以須要旋轉的量級O(logN),而RB-Tree最多隻需3次旋轉,只須要O(1)的複雜度。node
2. 其次,AVL的結構相較RB-Tree來講更爲平衡,在插入和刪除node更容易引發Tree的unbalance,所以在大量數據須要插入或者刪除時,AVL須要rebalance的頻率會更高。所以,RB-Tree在須要大量插入和刪除node的場景下,效率更高。天然,因爲AVL高度平衡,所以AVL的search效率更高。性能
紅黑樹的查詢性能略微遜色於AVL樹,由於他比avl樹會稍微不平衡最多一層,也就是說紅黑樹的查詢性能只比相同內容的avl樹最多多一次比較,可是,紅黑樹在插入和刪除上完爆avl樹,avl樹每次插入刪除會進行大量的平衡度計算,而紅黑樹爲了維持紅黑性質所作的紅黑變換和旋轉的開銷,相較於avl樹爲了維持平衡的開銷要小得多
效率