Abstract

In the previous chapter, we discussed search trees, giving find, insert, and delete methods, whose complexity is bounded by O(h) , where h is the height of the tree, that is, the maximum length of any path from the root to a leaf. But the height can be as large as n ; in fact, a linear list can be a correct search tree, but it is very inefficient. The key to the usefulness of search trees is to keep them balanced, that is, to keep the height bounded by O (log n ) instead of O(n) . This fundamental insight, together with the first method that achieved it, is due to Adel'son-Vel'skiĭ and Landis (1962), who in their seminal paper invented the height-balanced tree, now frequently called AVL tree. The height-balanced tree achieves a height bound h ≤ 1.44 log n + O (1). Because any tree with n leaves has height at least log n , this is already quite good. There are many other methods that achieve similar bounds, which we will discuss in this chapter. Height-Balanced Trees A tree is height-balanced if, in each interior node, the height of the right subtree and the height of the left subtree differ by at most 1. This is the oldest balance criterion for trees, introduced and analyzed by G.M. Adel'son-Vel'skiĭ and E.M. Landis (1962), and still the most popular variant of balanced search trees (AVL trees). A height-balanced tree has necessarily small height.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call