1) AVL trees are self-balancing binary search trees where the heights of the left and right subtrees of every node differ by at most one. This keeps the tree balanced during insertions and deletions and maintains O(log n) time for search, insert, and delete operations.
2) Rotations are used to rebalance the tree when insertions or deletions cause height differences greater than one between subtrees. There are four types of rotations: single left, single right, double left-right, and double right-left.
3) The advantages of AVL trees are that they are always balanced, guaranteeing fast O(log n) performance for search, insert, and delete operations