This article needs editing to comply with Wikipedia's Manual of Style. Please help improve the content.(November 2021) (Learn how and when to remove this message)
Self-balancing binary search tree
AVL tree
Type
Tree
Invented
1962
Invented by
Georgy Adelson-Velsky and Evgenii Landis
Complexities in big O notation
Space complexity
Space
Time complexity
Function
Amortized
Worst Case
Search
[1]
[1]
Insert
[1]
[1]
Delete
[1]
[1]
In computer science, an AVL tree (named after inventors Adelson-Velsky and Landis) is a self-balancing binary search tree. In an AVL tree, the heights of the two child subtrees of any node differ by at most one; if at any time they differ by more than one, rebalancing is done to restore this property. Lookup, insertion, and deletion all take O(log n) time in both the average and worst cases, where is the number of nodes in the tree prior to the operation. Insertions and deletions may require the tree to be rebalanced by one or more tree rotations.
The AVL tree is named after its two Soviet inventors, Georgy Adelson-Velsky and Evgenii Landis, who published it in their 1962 paper "An algorithm for the organization of information".[2] It is the oldest self-balancing binary search tree data structure to be invented.[3]
AVL trees are often compared with red–black trees because both support the same set of operations and take time for the basic operations. For lookup-intensive applications, AVL trees are faster than red–black trees because they are more strictly balanced.[4] Similar to red–black trees, AVL trees are height-balanced. Both are, in general, neither weight-balanced nor -balanced for any ;[5] that is, sibling nodes can have hugely differing numbers of descendants.
^ abcdefEric Alexander. "AVL Trees". Archived from the original on July 31, 2019.
^Adelson-Velsky, Georgy; Landis, Evgenii (1962). "An algorithm for the organization of information". Proceedings of the USSR Academy of Sciences (in Russian). 146: 263–266. English translation by Myron J. Ricci in Soviet Mathematics - Doklady, 3:1259–1263, 1962.
^Sedgewick, Robert (1983). "Balanced Trees". Algorithms. Addison-Wesley. p. 199. ISBN 0-201-06672-6.
^Pfaff, Ben (June 2004). "Performance Analysis of BSTs in System Software" (PDF). Stanford University.
^AVL trees are not weight-balanced? (meaning: AVL trees are not μ-balanced?) Thereby: A Binary Tree is called -balanced, with , if for every node , the inequality
holds and is minimal with this property. is the number of nodes below the tree with as root (including the root) and is the left child node of .
computer science, an AVLtree (named after inventors Adelson-Velsky and Landis) is a self-balancing binary search tree. In an AVLtree, the heights of the...
a WAVL tree or weak AVLtree is a self-balancing binary search tree. WAVL trees are named after AVLtrees, another type of balanced search tree, and are...
Volume Limiter, limits the volume of a device such as an MP3 or CD player AVLtree, a data structure named after inventors Adelson-Velsky and Landis that...
rotation at X. Tree rotations are used in a number of tree data structures such as AVLtrees, red–black trees, WAVL trees, splay trees, and treaps. They...
complete binary tree this way versus each node having pointer(s) to its sibling(s). 2–3 tree 2–3–4 tree AA tree Ahnentafel AVLtree B-tree Binary space partitioning...
"thinnest" AVLtree. These trees have a number of vertices that is a Fibonacci number minus one, an important fact in the analysis of AVLtrees. Fibonacci...
maintain balance (e.g., tree height can be added to get an order statistic AVLtree, or a color bit to get a red–black order statistic tree). Alternatively,...
graphs. AA treeAVLtree Binary search tree Binary tree Cartesian tree Conc-tree list Left-child right-sibling binary tree Order statistic tree Pagoda Randomized...
to AVLtrees, in that the actual rotations depend on 'balances' of nodes, but the means of determining the balance differs greatly. Since AVLtrees check...
associative array with a self-balancing binary search tree, such as an AVLtree or a red–black tree. Compared to hash tables, these structures have both...
self-adjusting tree. Using pointer-compression techniques, it is possible to construct a succinct splay tree. AVLtree B-tree Finger tree Geometry of binary...
Finger trees were first published in 1977 by Leonidas J. Guibas, and periodically refined since (e.g. a version using AVLtrees, non-lazy finger trees, simpler...
tagged intervals Interval Tree (C#) - an augmented interval tree, with AVL balancing Interval Tree (Ruby) - a centered interval tree, immutable, compatible...
slightly faster search times. Red–black tree B-treeAVLtree Scapegoat tree Andersson, Arne (1993). "Balanced Search Trees made Simple". WADS '93: Proceedings...
Judy arrays are highly optimized 256-ary radix trees. Judy trees are usually faster than AVLtrees, B-trees, hash tables and skip lists because they are...
constructed international auxiliary language Georgy Adelson-Velsky, inventor of AVLtree algorithm, developer of Kaissa, the first world computer chess champion...
Abstract syntax tree B-tree Binary tree Binary search tree Self-balancing binary search treeAVLtree Red–black tree Splay tree T-tree Binary space partitioning...
type theorems. With Georgy Adelson-Velsky, he invented the AVLtree data structure (where "AVL" stands for Adelson-Velsky Landis). He died in Moscow. His...
search tree; it preserves the binary search tree property (an in-order traversal of the tree will yield the keys of the nodes in proper order). AVLtrees and...
N O P Q R S T U V W X Y Z See also Georgy Adelson-Velsky, inventor of AVLtree algorithm, developer of Kaissa, the first world computer chess champion...