Updating almost complete trees or one level makes all the difference
An almost complete (or 2-complete) tree is a binary search tree in which any two external nodes are no more than two levels apart. While complete binary search trees have an amortized update cost of Θ(n), we demonstrate that almost complete binary search trees have an amortized update cost of O(log2n). Thus, they are an attractive alternative for those situations that require fast retrieval, that is, log n+O(1) comparisons, and have few updates.
KeywordsBalance Tree Binary Search Tree External Node Balance Criterion Insertion Algorithm
Unable to display preview. Download preview PDF.
- G. M. Adel'son-Vel'skii and E. M. Landis. An algorithm for the organization of information. Sov. Math. Dokl., 3:1259–1262, 1962.Google Scholar
- A. Andersson. Improving partial rebuilding by using simple balance criteria. In Proceedings of the 1989 Workshop on Algorithms and Data Structures, pages 393–402. Springer-Verlag, 1989.Google Scholar
- A. Andersson and T. W. Lai. Efficient maintenance of almost perfectly balanced trees. In preparation.Google Scholar
- L. J. Guibas and R. Sedgewick. A dichromatic framework for balanced trees. In Proceedings of the 19th Annual IEEE Symposium on Foundations of Computer Science, pages 8–21, 1978.Google Scholar
- T. W. Lai and D. Wood. Updating approximately complete trees. Technical Report CS-89-57, Univ. of Waterloo, 1989.Google Scholar
- M. H. Overmars. The Design of Dynamic Data Structures, volume 156 of Lecture Notes in Computer Science. Springer-Verlag, 1983.Google Scholar