On using conditional rotation operations to adaptively structure binary search trees

  • R. P. Cheetham
  • B. J. Oommen
  • D. T. H. Ng
Complexity And Optimization
Part of the Lecture Notes in Computer Science book series (LNCS, volume 326)

Abstract

Consider a set
of records, where each record is identified by a unique key. The records are accessed based on a set of access probabilities
and are to be arranged lexicographically using a binary search tree. If
is known a priori, it is well known [7] that an optimal binary search tree may be constructed using
and
. We consider the case when
is not known a priori. A new restructuring heuristic is introduced that requires three extra integer memory locations per record, and this restructuring of the tree is performed only if it decreases the weighted path length of the overall resultant tree. We also present a space optimized version of the latter restructuring mechanism which requires only one extra integer field per record. We show that the cost of the tree is reduced by each restructuring operation, and present experimental results to demonstrate the superiority of our algorithm over all other reported efficient static and dynamic schemes.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Adel'son-Velski'i, G. M. and Landis, E.M., "An algorithm for the organization of information", Sov. Math. Dokl., 3(1962), pp. 1259–1262.Google Scholar
  2. [2]
    Allen, B. and Munro, I., "Self-organizing binary search trees", J.ACM 25(1978), pp. 526–535.Google Scholar
  3. [3.
    Arnow, D. M. and Tenenbaum, A. M., "An investigation of the move-ahead-k rules", Congressus Numerantium, Proceedings of the Thirteenth Southeastern Conference on Combinatorics, Graph Theory and Computing, Florida, Feb. 1982, pp.47–65.Google Scholar
  4. [4]
    Bayer, P. J., "Improved bounds on the costs of optimal and balanced binary search trees", MAC Technical Memo-69, Nov. 1975.Google Scholar
  5. [5]
    Bitner, J. R., "Heuristics that dynamically organize data structures", SIAM J.Comput., 8(1979), pp.82–110.Google Scholar
  6. [6]
    Gonnet, G. H., Munro, J. I. and Suwanda, H., "Exegesis of self-organizing linear search", SIAM J.Comput., 10(1981), pp.613–637.Google Scholar
  7. [7]
    Knuth, D. E., The Art of Computer Programming, vol. 3, Addison-Wesley, Reading, Ma., 1973.Google Scholar
  8. [8]
    McCabe, J., "On serial files with relocatable records", Operations Research, 12(1965), pp.609–618.Google Scholar
  9. [9]
    Mehlhorn, K., "Nearly optimal binary search trees", Acta Informatica, 5(1975), pp.287–295.CrossRefGoogle Scholar
  10. [10]
    Oommen, B.J. and Hansen, E. R., "List organizing strategies using stochastic move-to-front and stochastic move-to-rear operations", SIAM J.Comput., vol.16, No.4, pp. 705–716.Google Scholar
  11. [11]
    Oommen, B. J., Hansen, E. R. and Munro, J. I., "Deterministic Move-to-Rear List Organizing Strategies with Optimal and Expedient Properties", Proc. of the Twenty-Fifth Allerton Conference, Sept. 1987.Google Scholar
  12. [12]
    Rivest, R. L., "On self-organizing sequential search heuristics", Comm. ACM, 19(1976), pp.63–67.Google Scholar
  13. [13]
    Sleator, D. D. and Tarjan, R. E., "Self-adjusting binary search trees", J.ACM, 32(1985), pp.652–686.Google Scholar
  14. [14]
    Walker, W. A. and Gotlieb, C. C., "A top-down algorithm for constructing nearly optimal lexicographical trees", in Graph Theory and Computing, Academic Press, New York, 1972.Google Scholar
  15. [15]
    Cheetham, R. P., Oommen, B. J. and Ng, D. T. H., "Adaptive Structuring of Binary Search Trees Using Conditional Rotations". Submitted for publication.Google Scholar

Copyright information

© Springer-Verlag 1983

Authors and Affiliations

  • R. P. Cheetham
    • 1
  • B. J. Oommen
    • 1
  • D. T. H. Ng
    • 1
  1. 1.School of Computer ScienceCarleton UniversityOttawaCanada

Personalised recommendations