A programming language
CSC '93 Proceedings of the 1993 ACM conference on Computer science
Accelerating List Processing in Discrete Programming
Journal of the ACM (JACM)
ACM Computing Surveys (CSUR)
Identifier Search Mechanisms: A Survey and Generalized Model
ACM Computing Surveys (CSUR)
Binary Search Trees and File Organization
ACM Computing Surveys (CSUR)
ACM Computing Surveys (CSUR)
Balancing binary trees by internal path reduction
Communications of the ACM
Analysis of design alternatives for virtual memory indexes
Communications of the ACM
Performance of height-balanced trees
Communications of the ACM
Optimizing binary trees grown with a sorting algorithm
Communications of the ACM
On Foster's information storage and retrieval using AVL trees
Communications of the ACM
Communications of the ACM
A balanced tree storage and retrieval algorithm
SIGIR '71 Proceedings of the 1971 international ACM SIGIR conference on Information storage and retrieval
An empirical comparison of B-trees, compact B-trees and multiway trees
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
Binary search trees of bounded balance
STOC '72 Proceedings of the fourth annual ACM symposium on Theory of computing
Binary search trees and file organization
SIGFIDET '72 Proceedings of 1972 ACM-SIGFIDET workshop on Data description, access and control
Hybrid trees: A data structure for lists of keys
SIGFIDET '72 Proceedings of 1972 ACM-SIGFIDET workshop on Data description, access and control
Organization and maintenance of large ordered indexes
Software pioneers
On the development of data structures
ACM SIGPLAN Notices
B-tries for disk-based string management
The VLDB Journal — The International Journal on Very Large Data Bases
Efficient license validation in MPML DRM architecture
Proceedings of the nineth ACM workshop on Digital rights management
Organization and maintenance of large ordered indices
SIGFIDET '70 Proceedings of the 1970 ACM SIGFIDET (now SIGMOD) Workshop on Data Description, Access and Control
Binary B-trees for virtual memory
SIGFIDET '71 Proceedings of the 1971 ACM SIGFIDET (now SIGMOD) Workshop on Data Description, Access and Control
On the application of evolutionary algorithms to the consensus tree problem
EvoCOP'05 Proceedings of the 5th European conference on Evolutionary Computation in Combinatorial Optimization
Warp speed: executing time warp on 1,966,080 cores
Proceedings of the 2013 ACM SIGSIM conference on Principles of advanced discrete simulation
Hi-index | 0.09 |
ALTHOUGH TREES have long been used for the storage and retrieval of information 1,2, unfortunately there is a tradeoff between storage (construction) time and retrieval time. To keep retrieval time at a minimum, the tree must be balanced; but posting a new item under this constraint can require a complete reorganization of the tree. Conversely, if the tree is allowed to grow without restriction on its structure, the average number of probes (that is, references to main memory) required for retrieval can approach N/2, depending on the order of arrival of the items. Recently, Adel'son-Vel'skiy and Landis presented a tree structure that provides a good compromise between the two extremes of complete balancing and unrestricted growth 3. Their structures - called AVL trees here - are characterized by the constraint that the two subtrees dependent from any node will have maximum path lengths that will differ at most by one. This paper reviews the results of Adel'son-Vel'skiy and Landis, presenting somewhat expanded versions of their proofs. It then goes on to derive the mean number of probes for posting and retrieval in these structures. Finally, it shows that the number of probes required to post items on or retrieve items from AVL trees are few enough to permit a suitably organized computer, using only conventional components, to keep up with the delivery of requests from a buffered hypertape.