Rebalancing an AVL Tree After Deletion
Below we show the basic schemes for rebalancing an AVL tree after a deletion. The basic algorithm for rebalancing after deletion works similarly to the strategy for rebalancing after insertion. However, unlike the case for insertion, it may be necessary to perform more than one update with a single or double rotation.
We show below two diagrams illustrating the rebalancing process. In both cases, the node with label k1 is the lowest node in the AVL tree where the AVL height properties are violated. In addition to the two cases pictured below, there are the two dual (i.e., symmetric) cases where the deletion has occurred in the left subtree below k1.